61 lines
3.3 KiB
Markdown
61 lines
3.3 KiB
Markdown
# TODO
|
|
|
|
Persistent task list. Check off + note outcome; move done items to the bottom log with date.
|
|
State: `.opencode/state/status.md`. Design: `docs/architecture.md`.
|
|
|
|
## Phase 0 — analysis
|
|
|
|
- [x] Inspect repo, fastcrw reference, pocock-agents, upstream skills, OpenCode v2 plugin + agent docs
|
|
- [x] Architecture (docs/architecture.md §1)
|
|
- [x] Plugin API requirements (§3)
|
|
- [x] Agent architecture (§4)
|
|
- [x] Sync strategy (§5)
|
|
- [x] Gitea Actions design (§6)
|
|
- [x] Testing strategy (§7)
|
|
- [x] Phased plan (§9)
|
|
- [ ] Skill inventory + classification matrix → docs/skill-mapping.md (subagent analysis in flight)
|
|
- [ ] Commit phase-0 docs (`docs: phase 0 analysis and migration plan`)
|
|
|
|
## Phase 1 — plugin package
|
|
|
|
- [ ] 1.1 scaffold package (package.json name @haylan/opencode-pocock — CONFIRM scope with repo
|
|
owner, tsconfig, prettier, .gitignore, MIT LICENSE + upstream attribution, README stub)
|
|
- [ ] 1.2 scripts/sync-upstream.ts + vendor upstream/ @49dd158 + state update
|
|
- [ ] 1.3 scripts/generate.ts: manifest.json + skills/ output + unit tests (parser, manifest)
|
|
- [ ] 1.4 src/index.ts plugin: skill injection, options validation, agent-staleness warning +
|
|
fake-ctx integration tests (verify Skill.Info fields against installed @opencode/plugin typings!)
|
|
- [ ] 1.5 bin init (copy agents, -g global, no silent overwrite) + tests
|
|
- [ ] 1.6 agent-templates/: port pocock + pocock-worker from pocock-agents to V2-native frontmatter
|
|
(permissions array, shell action, no legacy keys); generate agents/*.md; drift tests
|
|
- [ ] 1.7 scripts/release.ts + version.ts adapted from fastcrw + unit tests
|
|
- [ ] 1.8 .gitea/workflows/: check.yml, nightly.yml, smoke (dispatch); smoke.ts against opencode serve
|
|
- [ ] 1.9 local runtime verification (serve + HTTP API: plugin ok, skills visible, autoinvoke flags,
|
|
agents after init, worker denies hold) → docs/runtime-checks.md
|
|
- [ ] 1.10 manual release 0.1.0 to Gitea registry; verify install-from-registry by package name
|
|
- [ ] ask repo admin to add Gitea secret PACKAGE_TOKEN (write:package + write:repository)
|
|
|
|
## Phase 2 — conversion
|
|
|
|
- [ ] 2.1 deep per-skill analysis → .opencode/state/classification.json + docs/skill-mapping.md
|
|
(classification.json becomes generator input; mapping doc generated from it)
|
|
- [ ] 2.2 guardrails plugin hook (opt-in, tool.hook execute.before on shell) + tests
|
|
- [ ] 2.3 pocock-reviewer: implement or document rejection in decisions.md
|
|
- [ ] 2.4 orchestrator V2 flow wiring (background-subagent status in V2? batch fallback; worktree
|
|
permission guidance; slash UX for user-invoked skills)
|
|
- [ ] 2.5 per-skill regression checks + manual orchestration smoke (token-spending, documented)
|
|
- [ ] 2.6 README usage guide + finalize skill-mapping
|
|
- [ ] 2.7 one week of green nightlies → declare stable
|
|
|
|
## Open questions
|
|
|
|
- Exact `Skill.Info`/editor.add field set — check `@opencode/plugin` typings at 1.4.
|
|
- V2 background subagents: still env-gated? Affects orchestrator dispatch loop wording (1.6).
|
|
- Does `slash` need explicit `true` in editor.add to expose `/name` commands? (1.4 runtime check.)
|
|
- Package name/scope confirmation (1.1).
|
|
- Does nightly runner have network access to github.com for upstream fetch? (1.8 — fallback: mirror
|
|
upstream to Gitea and sync from the mirror.)
|
|
|
|
## Done log
|
|
|
|
- 2026-10-14: phase-0 analysis docs written (AGENTS.md, state/, docs/architecture.md, TODO.md).
|