@cardor/agent-harness-kit 1.8.0 → 1.8.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -115,7 +115,7 @@ Everything is stored locally in a SQLite database (`.harness/harness.db`). No cl
115
115
  - **Markdown fallback** — `current.md` is always regenerated so agents can understand the session state even without the MCP server.
116
116
  - **Docs search** — agents can call `docs.search(query)` to find relevant content in your project's docs folder before writing code.
117
117
  - **Multi-database support** — SQLite by default (zero native deps, uses `node:sqlite` on Node ≥ 22 or `bun:sqlite` on Bun). Switch to PostgreSQL or MySQL with a single config line — same schema, same MCP tools, same workflow.
118
- - **Incremental scaffold** — `ahk init` and `ahk build` never overwrite files you've customized. Agent definitions you've edited are preserved.
118
+ - **Incremental scaffold** — `ahk init` preserves files you've already customized (agent definitions you've edited are kept). `ahk build` always regenerates agent files from the latest templates so they stay up to date.
119
119
  - **Global installation** — `ahk init` can scaffold the harness into your home directory (`~/.claude` or `~/.config/opencode`) to share it across all projects.
120
120
  - **Input validation** — CLI prompts validate all inputs (name length, path format, task title, etc.) and retry with the error message instead of silently accepting bad values.
121
121
 
@@ -521,7 +521,7 @@ echo "All checks passed."
521
521
 
522
522
  ### Agent definition files
523
523
 
524
- Created once and **never overwritten** by `ahk build` your edits are permanent.
524
+ Created by `ahk init` (which preserves existing files) and **regenerated by `ahk build`** from the latest templates. If you customise an agent file, re-running `ahk build` will overwrite your edits keep customisations in source control.
525
525
 
526
526
  **Claude Code** (`.claude/agents/*.md`) and **OpenCode** (`.opencode/agents/*.md`) use Markdown with YAML frontmatter:
527
527
 
package/dist/cli.js CHANGED
@@ -739,11 +739,11 @@ No tasks in progress.
739
739
  const projectName = config.project.name;
740
740
  const allowedPaths = (config.agents.explorer.allowedPaths ?? []).join(", ");
741
741
  const writablePaths = (config.agents.builder.writablePaths ?? []).join(", ");
742
- writeAgentFile(cwd2, ".claude/agents/lead.md", translateFrontmatterForClaudeCode(agentLead({ projectName }), "lead"));
743
- writeAgentFile(cwd2, ".claude/agents/explorer.md", translateFrontmatterForClaudeCode(agentExplorer({ projectName, allowedPaths }), "explorer"));
744
- writeAgentFile(cwd2, ".claude/agents/consultant.md", translateFrontmatterForClaudeCode(agentConsultant({ projectName }), "consultant"));
745
- writeAgentFile(cwd2, ".claude/agents/builder.md", translateFrontmatterForClaudeCode(agentBuilder({ projectName, writablePaths }), "builder"));
746
- writeAgentFile(cwd2, ".claude/agents/reviewer.md", translateFrontmatterForClaudeCode(agentReviewer({ projectName }), "reviewer"));
742
+ write2(".claude/agents/lead.md", translateFrontmatterForClaudeCode(agentLead({ projectName }), "lead"));
743
+ write2(".claude/agents/explorer.md", translateFrontmatterForClaudeCode(agentExplorer({ projectName, allowedPaths }), "explorer"));
744
+ write2(".claude/agents/consultant.md", translateFrontmatterForClaudeCode(agentConsultant({ projectName }), "consultant"));
745
+ write2(".claude/agents/builder.md", translateFrontmatterForClaudeCode(agentBuilder({ projectName, writablePaths }), "builder"));
746
+ write2(".claude/agents/reviewer.md", translateFrontmatterForClaudeCode(agentReviewer({ projectName }), "reviewer"));
747
747
  mergeClaudeMcpJson(join4(cwd2, ".mcp.json"), config.tools.mcp.port);
748
748
  mergeClaudeSettingsJson(join4(cwd2, ".claude/settings.json"));
749
749
  mergeClaudeSettingsLocalJson(join4(cwd2, ".claude/settings.local.json"));
@@ -1952,7 +1952,7 @@ function getProviderSkillsDir(provider) {
1952
1952
  }
1953
1953
  function checkSkills(cwd2, provider) {
1954
1954
  const skillsDir = getProviderSkillsDir(provider);
1955
- const skillSourceBase = join11(__dirname4, "materializer", "skills");
1955
+ const skillSourceBase = join11(__dirname4, "skills");
1956
1956
  return SKILL_NAMES.map((name) => {
1957
1957
  const livePath = join11(cwd2, skillsDir, name, "SKILL.md");
1958
1958
  const sourcePath = join11(skillSourceBase, name, "SKILL.md");