agentsclimarketplace

Kw init

Skill chenpg2/kw-engine/skills/kw-init

Scaffold a new knowledge engine workspace OR link to an existing shared knowledge base. Use when starting a new knowledge base or connecting a project to an existing one.From its SKILL.md

Install
npx -y skills add chenpg2/kw-engine --skill kw-init

Assembled from the repository path, not quoted from the project. Check it against their README if it does not work.

One thing to look at

  • 11 stars11 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.

SKILL.md

3.1 KB, as published. Nobody here has run it

/kw-init — scaffold or link a knowledge engine workspace

Two modes:

Mode 1: Link to an existing knowledge base (most common)

If a shared knowledge base already exists (e.g. ~/Downloads/soft/knowledge_wiki/memory/), link this project to it instead of creating a new one:

kw link ~/Downloads/soft/knowledge_wiki/memory/

This creates .kw/config.yaml with paths.memory pointing to the shared library. All kw commands (search, verify, status, etc.) now use the shared knowledge.

Mode 2: Create a new knowledge base from scratch

Run this once in any repo to set up a fresh, empty knowledge engine.

What it creates

<project-root>/
├── .kw/
│   └── config.yaml          # Engine config (model routing, fetch policy)
├── memory/
│   ├── SCHEMA.md            # Data structure contract
│   ├── index.json           # Central index (starts empty)
│   ├── papers/              # L1 faithful readings
│   ├── principles/          # L2 abstract principles
│   ├── synthesis/           # L3 design-space, contradictions, gaps
│   └── golden/              # Exemplar records for quality reference
├── paper/                   # Raw PDFs (gitignored)
├── process/
│   ├── extract-template.md  # L1 extraction rubric
│   └── distill-rubric.md    # L2 distillation rubric
└── problems/                # Use-case pointers

Procedure

  1. Check if memory/SCHEMA.md already exists. If yes, report "Already initialized" and STOP.
  2. Create the directory structure above.
  3. Write .kw/config.yaml from the template below.
  4. Write memory/SCHEMA.md from the kw-engine package's canonical schema.
  5. Write memory/index.json with the empty initial state.
  6. Write process/extract-template.md and process/distill-rubric.md.
  7. Add paper/*.pdf and .kw/index.db to .gitignore if not already present.
  8. Report: "Knowledge engine initialized. Run /kw to start ingesting papers."

Config template (.kw/config.yaml)

version: 1

paths:
  papers_src: paper/
  memory: memory/
  index: memory/index.json
  process: process/
  problems: problems/
  logs: .kw/logs/

loop1:
  synthesize_after_n_papers: 5

process_versions:
  extract_template: extract-template@v1
  distill_rubric: distill-rubric@v1

model_routing:
  kw-fetcher: sonnet
  kw-reader: sonnet
  kw-distiller: opus
  kw-synthesizer: opus
  kw-verifier: sonnet

fetch:
  fallback_order: [with_fallback, arxiv, biorxiv, medrxiv, pubmed, crossref, openalex, semantic, curl_oa]
  validate:
    magic_bytes: "%PDF-"
    min_bytes: 10240
    max_bytes: 52428800
  scihub: false
  paywalled_via_browse: true
  idempotent: true

active_expansion:
  enabled: false

Initial index.json

{
  "version": 1,
  "counters": { "principle": 0 },
  "papers": [],
  "principles": [],
  "synthesis": { "last_run": null, "n_principles_at_last_run": 0 }
}

Keep looking

Skills are one crate of 627,801. Ordering is by how many stacks a row turns up in, so the top of any crate is what has actually been picked rather than what has the most stars.