Chitking (哲徑) is a standalone research-path CLI.
Chitking now generates Chitking-native scaffold names:
- primary binary:
chitking - generated state directory:
.chitking - generated research directory:
research/ - generated OpenCode names:
chitking-*,ck-*,chitking-workflow, andinject-chitking-context.js - generated Codex slash-command skills:
.codex/skills/ck-*/SKILL.md
Currently migrated:
chitking initchitking new <title> [--slug <slug>]chitking listchitking show [thread]chitking focus <thread>chitking rename <thread> <title>chitking archive <thread> --yeschitking restore <thread>chitking delete <thread> --yeschitking orientchitking assess [thread]chitking iterate <title> [--slug <slug>]chitking mature --to <level> --reason <text>chitking step [--to <stage>] [--readiness <0-5>] [--reason <text>]chitking dispatch [--role <role>]chitking record --type <type> --text <text> [--commit <ref>]
Remaining Chitking runtime commands: none from the legacy bridge scope.
Threads advance through circular stages (seed → briefed → gap-identified → specified → verification-planned → implementation-ready → evidence-recorded → synthesis-ready → loop back to seed). Each stage has a per-stage readiness gate (1-5, resets on step). A separate whole-thread maturity (nascent → developing → established → mature) tracks holistic quality. Run chitking assess to evaluate content against configurable criteria, and chitking iterate <title> to archive the current thread and start a new cycle.
pnpm install
pnpm build
pnpm test
pnpm lint
pnpm typecheckPrerequisite: Node >=20 (see engines in package.json).
Build the CLI:
pnpm install
pnpm buildMake the local build runnable. Pick one:
# Primary: register the package's `chitking` bin globally (pnpm v11+; matches demo/README style)
pnpm add -g .
# No-install fallback: invoke the built binary directly from the repo root
node bin/chitking.js --helppnpm add -g . requires pnpm's global bin directory on PATH (standalone installer, or run pnpm setup once). If pnpm was installed via Homebrew/npm without PNPM_HOME, use the node bin/chitking.js fallback.
Run against the committed demo/ workspace:
cd demo
chitking init
chitking focus contact-stability
chitking orient
chitking dispatch
# Without `pnpm add -g .`, use the direct invocation instead:
# node ../bin/chitking.js initInspect the committed user-owned content: demo/research/project.md and demo/research/contact-stability/thread.md. The demo/.chitking/, demo/.opencode/, and demo/.codex/ directories are generated by chitking init and ignored by demo/.gitignore.
Reset the demo to its committed state (removes only ignored generated files; capital X):
git clean -fdX demo/For automated regression coverage instead of manual verification, run pnpm test.