codymaster 4.8.0 โ 5.2.0
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/CHANGELOG.md +55 -7
- package/README.md +142 -95
- package/dist/advisory-handoff.js +89 -0
- package/dist/advisory-report.js +105 -0
- package/dist/cli/command-registry.js +8 -0
- package/dist/cli/commands/bench.js +69 -0
- package/dist/cli/commands/brain.js +108 -0
- package/dist/cli/commands/engineering.js +108 -0
- package/dist/cli/commands/evolve.js +123 -0
- package/dist/cli/commands/mcp-serve.js +104 -0
- package/dist/cm-config.js +0 -18
- package/dist/codybench/judges/automated.js +31 -0
- package/dist/codybench/runners/claude-code.js +32 -0
- package/dist/codybench/suites/memory-retention.js +85 -0
- package/dist/codybench/suites/tdd-regression.js +35 -0
- package/dist/codybench/suites/token-efficiency.js +55 -0
- package/dist/codybench/types.js +2 -0
- package/dist/context-db.js +157 -0
- package/dist/continuity.js +2 -6
- package/dist/execution-analyzer.js +138 -0
- package/dist/indexer/skills-lib.js +533 -0
- package/dist/indexer/skills-map.js +1374 -0
- package/dist/indexer/skills.js +16 -0
- package/dist/learning-promoter.js +246 -0
- package/dist/mcp-context-server.js +230 -1
- package/dist/skill-chain.js +63 -1
- package/dist/skill-evolver.js +456 -0
- package/dist/skill-execution-cache.js +254 -0
- package/dist/smart-brain-router.js +184 -0
- package/dist/storage-backend.js +10 -8
- package/dist/token-budget.js +88 -0
- package/package.json +2 -3
- package/scripts/postinstall.js +10 -59
- package/skills/CLAUDE.md +0 -5
- package/skills/_shared/helpers.md +2 -8
- package/skills/cm-browse/SKILL.md +6 -0
- package/skills/cm-conductor-worktrees/SKILL.md +4 -0
- package/skills/cm-content-factory/landing/docs/content/changelog.md +4 -4
- package/skills/cm-content-factory/landing/docs/content/deployment.md +3 -3
- package/skills/cm-content-factory/landing/docs/content/execution-flow.md +8 -8
- package/skills/cm-content-factory/landing/docs/content/memory-system.md +38 -0
- package/skills/cm-content-factory/landing/docs/content/openspace.md +1 -1
- package/skills/cm-content-factory/landing/docs/content/use-cases.md +2 -2
- package/skills/cm-content-factory/landing/docs/content/v5-intro.md +3 -3
- package/skills/cm-content-factory/landing/docs/index.html +1 -1
- package/skills/cm-content-factory/landing/index.html +3 -3
- package/skills/cm-content-factory/landing/translations.js +37 -37
- package/skills/cm-continuity/SKILL.md +32 -33
- package/skills/cm-design-studio/SKILL.md +4 -0
- package/skills/cm-ecosystem-roadmap/SKILL.md +4 -0
- package/skills/cm-engineering-meta/SKILL.md +4 -0
- package/skills/cm-guardian-runtime/SKILL.md +5 -1
- package/skills/cm-mcp-engineering/SKILL.md +4 -0
- package/skills/cm-post-deploy-canary/SKILL.md +4 -0
- package/skills/cm-project-bootstrap/SKILL.md +11 -0
- package/skills/cm-qa-visual-cli/SKILL.md +4 -0
- package/skills/cm-retro-cli/SKILL.md +4 -0
- package/skills/cm-second-opinion-cli/SKILL.md +4 -0
- package/skills/cm-security-gate/SKILL.md +1 -0
- package/skills/cm-skill-chain/SKILL.md +25 -4
- package/skills/cm-skill-evolution/SKILL.md +83 -0
- package/skills/cm-skill-health/SKILL.md +83 -0
- package/skills/cm-skill-index/SKILL.md +11 -3
- package/skills/cm-skill-search/SKILL.md +49 -0
- package/skills/cm-skill-share/SKILL.md +58 -0
- package/skills/cm-sprint-bus/SKILL.md +4 -0
- package/skills/cm-start/SKILL.md +0 -10
- package/skills/cm-tdd/SKILL.md +2 -2
- package/skills/profiles/full.txt +4 -0
- package/install.sh +0 -1125
- package/scripts/viking-demo.ts +0 -105
- package/skills/cm-content-factory/landing/docs/content/openviking.md +0 -33
package/CHANGELOG.md
CHANGED
|
@@ -4,6 +4,55 @@ All notable changes to this project will be documented in this file.
|
|
|
4
4
|
|
|
5
5
|
Categories: ๐ **Improvements** | ๐ **Bug Fixes** | ๐ **Security**
|
|
6
6
|
|
|
7
|
+
## [Unreleased]
|
|
8
|
+
|
|
9
|
+
### ๐ Improvements โ Zero-Token Skill Discovery
|
|
10
|
+
- Removed LLM token waste on skill search by porting deterministic tech-stack parsing natively into `src/indexer/skills.ts`.
|
|
11
|
+
- Introduced `cm index skills` CLI command to compile `.cm/project-skills.md` locally.
|
|
12
|
+
- Updated Fission framework (`cm-project-bootstrap`, `cm-skill-index`, `AGENTS.md`) to prioritize zero-token local indexes over massive community directory sweeps.
|
|
13
|
+
|
|
14
|
+
### ๐ Improvements โ CodyMaster v6.0 "Self-Evolving Brain"
|
|
15
|
+
|
|
16
|
+
- **Smart Brain Router** โ `src/smart-brain-router.ts` adds a zero-cost keyword-based classifier that dynamically selects the optimal memory tiers for incoming tasks, reducing token waste by up to 60-80% for simple tasks.
|
|
17
|
+
- **Skill Execution Cache** โ `src/skill-execution-cache.ts` introduces an FTS5-backed warm cache for successful execution chains (effectiveness >= 0.70), skipping BM25 and LLM selection entirely for recurring task patterns.
|
|
18
|
+
- **Per-Tier Adaptive Token Budgeting** โ Enhanced `src/token-budget.ts` controls budgets natively per memory tier and visually outputs budget and savings reports.
|
|
19
|
+
- **Evolution Engine (Skill Evolver)** โ `src/skill-evolver.ts` brings true autonomy. CodyMaster now auto-repairs and auto-generates `SKILL.md` files locally with three modes: `FIX` (adds warnings to broken skills), `DERIVED` (clones highly successful fallback paths), and `CAPTURED` (creates new skills completely autonomously when a task completes without predefined skills). Ships with anti-loop protection and automatic `.md` backups.
|
|
20
|
+
- **Learning Promoter** โ `src/learning-promoter.ts` scans working memory for recurring failures or patterns (reinforced >= 3 times) and automatically promotes them into permanent `cm-learned-*` skills.
|
|
21
|
+
- **New CLI Tools** โ `cm smart plan/tiers`, `cm token report/savings`, and a full `cm evolve` lifecycle toolkit (`status`, `run`, `history`, `rollback`, `candidates`, `promote`).
|
|
22
|
+
- **Comprehensive Testing** โ Extensively covered the new architectures with 62 new testing scenarios (system currently sits at 302 passed tests natively).
|
|
23
|
+
|
|
24
|
+
### ๐ Improvements โ OpenViking De-scope
|
|
25
|
+
|
|
26
|
+
- Removed OpenViking auto-installation from `install.sh` and `scripts/postinstall.js`; CodyMaster now keeps the normal install path focused on the supported Node-first stack.
|
|
27
|
+
- Updated runtime/config/docs guidance so `storage.backend: viking` is treated as a deprecated experimental path instead of a default-facing feature.
|
|
28
|
+
- Removed the remaining OpenViking runtime backend, demo script, and dedicated tests; legacy `storage.backend: viking` configs now warn and fall back to SQLite.
|
|
29
|
+
|
|
30
|
+
### ๐ Improvements โ Advisory Loop Productization
|
|
31
|
+
|
|
32
|
+
- Added `cm advisory report`, `cm advisory metrics`, and `cm advisory handoff` so operators can inspect execution analyses, review per-skill quality, and generate structured recovery notes for `cm-skill-health` / `cm-skill-evolution`.
|
|
33
|
+
- `selectTopSkills()` now uses recorded `skill_metrics` as a quality-weighted boost for optional step ranking, while mandatory `always` steps remain unchanged.
|
|
34
|
+
- Added `src/advisory-handoff.ts` as the shared contract between analyzer output and self-healing workflows; the handoff can be emitted as Markdown or JSON.
|
|
35
|
+
- Exposed the advisory loop to MCP clients via `cm_advisory_report`, `cm_advisory_metrics`, and `cm_advisory_handoff` in `src/mcp-context-server.ts`.
|
|
36
|
+
- Added workflow and API docs for the advisory loop under `docs/workflows/advisory-loop.md` and `docs/api/api-reference.md`.
|
|
37
|
+
|
|
38
|
+
## [5.1.0] - 2026-04-11
|
|
39
|
+
|
|
40
|
+
### ๐ Improvements โ SkillsBench Intelligence + Ecosystem Reach
|
|
41
|
+
|
|
42
|
+
- **Intelligent Skill Selection (`selectTopSkills`)** โ `src/skill-chain.ts` now applies SkillsBench research findings at runtime. Each chain execution dynamically selects the top-3 most relevant skills for the current task (scored by BM25 token overlap + mandatory-step priority bonus). Result: 2-3 focused skills โ **+18.6pp** improvement vs 4+ loaded statically (+5.9pp). Chains with >3 mandatory steps still execute fully with a performance advisory logged to stderr. New exported functions: `scoreStepRelevance()`, `selectTopSkills()`.
|
|
43
|
+
|
|
44
|
+
- **`cm mcp-serve` command** โ New `src/cli/commands/mcp-serve.ts` registers `cm mcp-serve [--project <path>] [--print-config]`. Spawns `dist/mcp-context-server.js` over stdio with SIGINT/SIGTERM forwarding. `--print-config` prints ready-to-paste JSON config for **Goose** and **Claude Desktop**, enabling one-command ecosystem integration. Goose extension config: `{ "type": "stdio", "cmd": "npx", "args": ["codymaster", "mcp-serve"] }`.
|
|
45
|
+
|
|
46
|
+
- **CodyBench v0.1** โ New `cm bench` command backed by `src/codybench/` scaffolding. Three eval suites with A/B comparison (with vs without CodyMaster): `tdd-regression` (bug catch rate), `token-efficiency` (savings vs documented 78% claim), `memory-retention` (SQLite recall hit rate). Runner: `claude-code`. Judge: automated (mean/min/max/stddev). Results written to `codybench/reports/`. Methodology mirrors Goose's transparent benchmark publication strategy.
|
|
47
|
+
|
|
48
|
+
- **NLI Memory Interface (`cm_memory_write` + `cm_natural`)** โ MCP server now exposes **15 tools** (up from 13). `cm_memory_write` persists a learning to SQLite with auto-detected category (arch_decision / bug_fix / user_pref / code_pattern / context), configurable scope (session/project/global), TTL, and importance. `cm_natural` is a natural language router: "remember thatโฆ" โ write, "forget aboutโฆ" โ decay, "what did we learn aboutโฆ" โ FTS5 query. Zero new npm dependencies; pattern matching via regex.
|
|
49
|
+
|
|
50
|
+
- **Goose integration guide** โ `docs/integrations/goose.md` โ step-by-step tutorial: install CodyMaster โ `cm mcp-serve --print-config` โ paste YAML config into Goose โ test with `cm_natural`. Tool reference table included.
|
|
51
|
+
|
|
52
|
+
- **GitHub community templates** โ `.github/ISSUE_TEMPLATE/` now includes `good-first-skill.md` (with SkillsBench 12-point quality checklist), `benchmark-needed.md` (CodyBench eval request), `skill-improvement.md` (rubric-based improvement proposal).
|
|
53
|
+
|
|
54
|
+
- **Version bump** โ `package.json` version: `5.0.0` โ `5.1.0`. CLI command count: 18 โ 20 (`mcp-serve`, `bench`). MCP tool count: 13 โ 15.
|
|
55
|
+
|
|
7
56
|
## [4.8.0] - 2026-04-10
|
|
8
57
|
|
|
9
58
|
### ๐ Improvements โ Documentation site & README accuracy
|
|
@@ -27,8 +76,8 @@ Categories: ๐ **Improvements** | ๐ **Bug Fixes** | ๐ **Security**
|
|
|
27
76
|
|
|
28
77
|
### ๐ Improvements โ OpenViking Backend (Real Implementation)
|
|
29
78
|
|
|
30
|
-
-
|
|
31
|
-
-
|
|
79
|
+
- `**VikingBackend` โ real implementation** โ `src/backends/viking-backend.ts` implements all 11 `StorageBackend` methods by calling the [OpenViking REST API](https://github.com/volcengine/OpenViking) (default: `http://localhost:1933`). Replaces the placeholder stub from v4.5.5.
|
|
80
|
+
- `**VikingHttpClient`** โ New `src/backends/viking-http-client.ts`: thin fetch-based HTTP client wrapping OpenViking's `/write`, `/read`, `/ls`, `/search`, `/abstract`, `/overview`, `/health`, `/mkdir` endpoints. Zero new npm dependencies (uses Node.js built-in `fetch`).
|
|
32
81
|
- **URI layout in OpenViking workspace:** `learnings/<id>.json`, `decisions/<id>.json`, `indexes/<resource>/<level>.md`, `skill-outputs/<sessionId>/<id>.json`.
|
|
33
82
|
- **Semantic vector search** โ `queryLearnings()` and `queryDecisions()` now call OpenViking's `/search` endpoint, which uses embedding-based vector similarity. Finds related memories even when query terms don't match exactly (e.g. "async timeout" matches "network latency spike").
|
|
34
83
|
- **Auto L0/L1 via engine** โ `getL0Abstract()` and `getL1Overview()` call OpenViking's `/abstract` and `/overview` endpoints. No manual `cm continuity index` needed with Viking backend.
|
|
@@ -42,10 +91,10 @@ Categories: ๐ **Improvements** | ๐ **Bug Fixes** | ๐ **Security**
|
|
|
42
91
|
|
|
43
92
|
### ๐ Improvements โ StorageBackend Interface (OpenViking Swap Path)
|
|
44
93
|
|
|
45
|
-
-
|
|
46
|
-
-
|
|
47
|
-
-
|
|
48
|
-
-
|
|
94
|
+
- `**StorageBackend` interface** โ New `src/storage-backend.ts` defines an 11-method abstraction over CodyMaster's persistent memory store. Swapping storage engines is now a config change, not a code rewrite.
|
|
95
|
+
- `**SqliteBackend`** โ Thin wrapper around `context-db.ts`. Zero logic duplication; all existing callers untouched. New callers use `getBackend(projectPath)` for polymorphism.
|
|
96
|
+
- `**VikingBackend` stub** โ All methods throw a descriptive `NotImplementedError` with step-by-step install instructions for `@openviking/client`. Explicit swap path documented.
|
|
97
|
+
- `**getBackend(projectPath)` factory** โ Reads `.cm/config.yaml โ storage.backend` (`sqlite` | `viking`). Defaults to `sqlite` when config is absent or malformed.
|
|
49
98
|
- **Config template updated** โ `cm continuity init` now writes a `storage:` section to `.cm/config.yaml` with the backend switch commented out.
|
|
50
99
|
- **Zero breaking changes** โ `context-db.ts` and all existing callers unchanged. StorageBackend is additive.
|
|
51
100
|
- **Test suite expanded** โ `test/storage-backend.test.ts` (23 tests): factory defaults, config-driven dispatch, SqliteBackend full roundtrip, VikingBackend error messages. Total: **178 passed ยท 16 skipped ยท 0 failed**.
|
|
@@ -107,7 +156,6 @@ Categories: ๐ **Improvements** | ๐ **Bug Fixes** | ๐ **Security**
|
|
|
107
156
|
- **OpenSpec Protocol Upgrade** โ Enhanced integration with Fission-AI OpenSpec format (`openspec/changes/[initiative]/proposal.md`) for seamless context handoffs to downstream skills (`cm-planning` & `cm-execution`).
|
|
108
157
|
- **Skill Evolution Engine** โ Successfully executed automated self-healing mechanisms (Mode: FIX) for `cm-tdd` and `cm-debugging` after health monitor alerts.
|
|
109
158
|
|
|
110
|
-
|
|
111
159
|
## [4.3.0] - 2026-03-27
|
|
112
160
|
|
|
113
161
|
### ๐ Improvements
|
package/README.md
CHANGED
|
@@ -1,22 +1,10 @@
|
|
|
1
|
-
<div align="center">
|
|
2
|
-
|
|
3
1
|
[English](README.md) | [Tiแบฟng Viแปt](README-vi.md) | [ไธญๆ](README-zh.md) | [ะ ัััะบะธะน](README-ru.md) | [ํ๊ตญ์ด](README-ko.md) | [เคนเคฟเคจเฅเคฆเฅ](README-hi.md)
|
|
4
2
|
|
|
5
3
|
# ๐ง CodyMaster
|
|
6
4
|
|
|
7
5
|
### Your AI Agent is smart. CodyMaster makes it *wise*.
|
|
8
6
|
|
|
9
|
-
**
|
|
10
|
-
|
|
11
|
-
<p align="center">
|
|
12
|
-
<img alt="Version" src="https://img.shields.io/badge/version-4.8.0-blue.svg?cacheSeconds=2592000" />
|
|
13
|
-
<img alt="Skills" src="https://img.shields.io/badge/skills-68+-success.svg" />
|
|
14
|
-
<img alt="Platforms" src="https://img.shields.io/badge/platforms-7+-orange.svg" />
|
|
15
|
-
<img alt="Open Source" src="https://img.shields.io/badge/license-ISC-purple.svg" />
|
|
16
|
-
<a href="https://github.com/tody-agent/codymaster#readme" target="_blank">
|
|
17
|
-
<img alt="Documentation" src="https://img.shields.io/badge/documentation-yes-brightgreen.svg" />
|
|
18
|
-
</a>
|
|
19
|
-
</p>
|
|
7
|
+
**60+ Skills ยท 20+ Commands ยท 1 Plugin ยท 8+ Platforms ยท 6 Languages ยท v6.0.0**
|
|
20
8
|
|
|
21
9
|
```
|
|
22
10
|
( . \ --- / . )
|
|
@@ -28,11 +16,11 @@
|
|
|
28
16
|
Your smart coding companion.
|
|
29
17
|
```
|
|
30
18
|
|
|
31
|
-
|
|
19
|
+
CodyMaster Kanban Dashboard
|
|
32
20
|
|
|
33
|
-
|
|
21
|
+
[](https://discord.gg/codymaster)
|
|
34
22
|
|
|
35
|
-
|
|
23
|
+
### ๐ If CodyMaster saves you time, give it a [Star](https://github.com/tody-agent/codymaster)! ๐
|
|
36
24
|
|
|
37
25
|
---
|
|
38
26
|
|
|
@@ -42,14 +30,16 @@ You installed an AI coding agent. It's *brilliant*. It writes code faster than a
|
|
|
42
30
|
|
|
43
31
|
But then reality hits:
|
|
44
32
|
|
|
45
|
-
|
|
46
|
-
|
|
|
33
|
+
|
|
34
|
+
| ๐ค What Actually Happens | ๐ The Real Cost |
|
|
35
|
+
| ---------------------------------------------------------------------------- | ---------------------------------------------- |
|
|
47
36
|
| AI designs**differently every single time** โ same brand, 3 different styles | Clients think you're 3 different companies |
|
|
48
|
-
| AI fixes one bug,**silently breaks 5 other things**
|
|
49
|
-
| AI**forgets everything** between sessions
|
|
50
|
-
| AI writes zero tests, zero docs
|
|
37
|
+
| AI fixes one bug,**silently breaks 5 other things** | You redo the same work 3-4 times |
|
|
38
|
+
| AI**forgets everything** between sessions | You re-explain the same codebase every morning |
|
|
39
|
+
| AI writes zero tests, zero docs | Your codebase becomes a house of cards |
|
|
51
40
|
| You install 15 different skills โ**none of them talk to each other** | Frankenstein toolkit with zero synergy |
|
|
52
|
-
| Deploy to production =**deploy and pray** ๐
|
|
41
|
+
| Deploy to production =**deploy and pray** ๐ | Broken deploys at 2 AM, no rollback |
|
|
42
|
+
|
|
53
43
|
|
|
54
44
|
> *"AI gave me 100 hands. But without discipline, those hands created chaos."*
|
|
55
45
|
> โ **Tody Le**, Head of Product ยท 10+ years ยท Creator of CodyMaster
|
|
@@ -77,6 +67,8 @@ graph TD
|
|
|
77
67
|
class B,C,D,E,F,G,H team;
|
|
78
68
|
```
|
|
79
69
|
|
|
70
|
+
|
|
71
|
+
|
|
80
72
|
---
|
|
81
73
|
|
|
82
74
|
## โก What Makes CodyMaster Different
|
|
@@ -105,6 +97,8 @@ graph LR
|
|
|
105
97
|
class A,B,C,D,E,F,G,H,I,J,K,L phase;
|
|
106
98
|
```
|
|
107
99
|
|
|
100
|
+
|
|
101
|
+
|
|
108
102
|
### ๐ง The Unified Brain: 5-Tier Memory + Smart Spine
|
|
109
103
|
|
|
110
104
|
Your AI doesn't just execute โ it **understands and remembers** using a multi-scale, 5-Tier + Smart Spine architecture that persists across sessions and machines:
|
|
@@ -116,13 +110,16 @@ Your AI doesn't just execute โ it **understands and remembers** using a multi-
|
|
|
116
110
|
5. **Structural Memory (`cm-codeintell`)** โ AST-based CodeGraph. Up to 95% token compression for full codebase context.
|
|
117
111
|
|
|
118
112
|
๐ฆด **Smart Spine (v4.6+)** โ The nervous system connecting all 5 tiers:
|
|
113
|
+
|
|
119
114
|
- **SQLite + FTS5** โ BM25-ranked keyword search replaces flat JSON scans.
|
|
120
|
-
- **Progressive Loading (L0/L1/L2)** โ Context loaded at cheapest sufficient depth.
|
|
115
|
+
- **Progressive Loading (L0/L1/L2)** & **Smart Brain Router** โ Context loaded at cheapest sufficient depth via a robust task classifier. Up to **80% token savings** on standard workflows.
|
|
116
|
+
- **Skill Execution Cache** โ Warm FTS5 cache tracks successful agent skill chains. Matches bypass token-heavy LLM decision loops for instant task resolution.
|
|
121
117
|
- **cm:// URI Scheme** โ Skills request context by URI, not file paths.
|
|
122
118
|
- **Token Budget** โ 200k window pre-allocated by category. No more silent overflow.
|
|
123
119
|
- **Context Bus** โ Skills share outputs in real-time within a chain.
|
|
124
|
-
- **MCP Server** โ
|
|
125
|
-
- **
|
|
120
|
+
- **MCP Server** โ 18 tools exposed to Claude Desktop, Goose, and any MCP client (`src/mcp-context-server.ts`). Includes memory tools (`cm_memory_write`, `cm_natural`) plus advisory JSON surfaces (`cm_advisory_report`, `cm_advisory_metrics`, `cm_advisory_handoff`).
|
|
121
|
+
- **Intelligent Skill Selection** โ `selectTopSkills()` dynamically picks the 2-3 most task-relevant skills per chain execution. Backed by SkillsBench research: 2-3 focused skills = **+18.6pp** vs 4+ loaded statically.
|
|
122
|
+
- **SQLite-first memory stack** โ CodyMaster ships a supported default path built on SQLite + FTS5, token-budgeted context loading, and optional `qmd` / code intelligence layers. The older OpenViking path has been removed from the runtime.
|
|
126
123
|
|
|
127
124
|
โ๏ธ **The Cloud Brain (`cm-notebooklm`)**
|
|
128
125
|
High-value knowledge and design patterns are synced to NotebookLM, providing a universal, cross-machine "Soul" for your project. Auto-generate podcasts and flashcards to onboard human developers alongside the AI.
|
|
@@ -153,6 +150,8 @@ flowchart LR
|
|
|
153
150
|
style G fill:#4cd137,stroke:#44bd32,color:#fff
|
|
154
151
|
```
|
|
155
152
|
|
|
153
|
+
|
|
154
|
+
|
|
156
155
|
> **Result:** Zero leaked secrets. Zero wrong-account deploys. Zero "worked on my machine" failures.
|
|
157
156
|
|
|
158
157
|
### ๐จ Design System Builder โ Even From Old Products
|
|
@@ -161,7 +160,7 @@ Got a legacy product with no design system? **cm-design-system** scans your webs
|
|
|
161
160
|
|
|
162
161
|
### ๐ Zero Documentation? No Problem.
|
|
163
162
|
|
|
164
|
-
Don't know what the old code does?
|
|
163
|
+
Don't know what the old code does? `**cm-dockit`** reads your entire codebase and generates:
|
|
165
164
|
|
|
166
165
|
- ๐ Technical architecture docs
|
|
167
166
|
- ๐ User guides & SOPs
|
|
@@ -173,47 +172,51 @@ Don't know what the old code does? **`cm-dockit`** reads your entire codebase an
|
|
|
173
172
|
|
|
174
173
|
### ๐ก Strategic Brainstorming (Design Thinking + 9 Windows)
|
|
175
174
|
|
|
176
|
-
Before diving into code for complex requests,
|
|
175
|
+
Before diving into code for complex requests, `**cm-brainstorm-idea`** evaluates your product using multi-dimensional analysis (Tech, Product, Design, Business). It generates 2-3 qualified options using the 9 Windows (TRIZ) framework and provides a visual UI Preview via **Pencil.dev** or **Google Stitch** to validate the direction before detailed planning.
|
|
177
176
|
|
|
178
177
|
๐ [TRIZ-parallel workflow & UI preview handoff โ](docs/architecture/triz-parallel-engine.md)
|
|
179
178
|
|
|
180
|
-
|
|
181
179
|
### ๐ญ AI Content Factory v2.0 & Visual Dashboard
|
|
182
180
|
|
|
183
|
-
Need to scale content?
|
|
181
|
+
Need to scale content? `**cm-content-factory`** is a self-learning, multi-agent content engine. It automatically researches, writes, audits (SEO & Persuasion), and deploys high-converting articles with the Content Mastery framework (StoryBrand + Cialdini) to guarantee conversion.
|
|
184
182
|
|
|
185
183
|
Track it all on the **Visual Dashboard** (`cm-dashboard`): No more guessing. Track every task, every agent, every deployment on a real-time Kanban board. Pipeline progress, token tracker, event log โ all on one screen.
|
|
186
184
|
|
|
187
|
-
### ๐งฌ Self-Healing
|
|
185
|
+
### ๐งฌ Self-Healing Skills (Recovery, Search, and Evolution)
|
|
188
186
|
|
|
189
|
-
CodyMaster
|
|
187
|
+
CodyMaster ships a dedicated self-healing skill family for keeping the skill library usable as the repo evolves.
|
|
190
188
|
|
|
191
|
-
-
|
|
192
|
-
-
|
|
193
|
-
-
|
|
194
|
-
-
|
|
195
|
-
-
|
|
189
|
+
- `**cm-skill-health`** audits a skill's real health from shipped signals: docs drift, broken references, retro notes, validation, and gates.
|
|
190
|
+
- `**cm-skill-evolution`** (Skill Evolver) completes the autonomy loop with three modes: `FIX`, `DERIVED`, and `CAPTURED`. It modifies, clones, and generates new skills automatically based on analyzer recommendations, paired with anti-loop protection and `.md` backups.
|
|
191
|
+
- `**cm-learning-promoter`** searches your database for recurring task struggles and automatically graduates them into permanently coded skills (`cm-learned-*`) when appropriately reinforced.
|
|
192
|
+
- `**cm advisory report` / `metrics` / `handoff`** turn execution telemetry into a reviewable operator loop before any skill repair begins.
|
|
193
|
+
- Integrated Evolution commands (`cm evolve run/status/promote`) give immediate insight into all mutations.
|
|
194
|
+
- `**cm-skill-chain` Auto-Dispatch** โ sequence dispatching remains automated with task detection and multi-step handoffs.
|
|
195
|
+
- `**cm-skill-search`** finds the best skill through `cm suggest`, skill indexes, and repo search.
|
|
196
|
+
- `**cm-skill-share`** packages a skill safely across repos and machines without dropping companion files.
|
|
196
197
|
|
|
197
|
-
> **Think of it like an immune system for your AI toolkit.**
|
|
198
|
+
> **Think of it like an immune system for your AI toolkit.** First inspect the telemetry, then diagnose the skill, then repair it deliberately, then capture the learning.
|
|
198
199
|
|
|
199
200
|
### ๐ Growth Hacking Engine
|
|
200
201
|
|
|
201
|
-
Need popups, booking flows, or lead capture?
|
|
202
|
+
Need popups, booking flows, or lead capture? `**cm-growth-hacking`** generates complete conversion systems: Bottom Sheet + Calendar CTA + Tracking. Auto-detects industry, selects the right pattern, wires up `**cm-booking-calendar`** for appointments and `**cm-ads-tracker**` for pixel tracking. Zero dependencies.
|
|
202
203
|
|
|
203
204
|
---
|
|
204
205
|
|
|
205
206
|
## ๐ Scattered Skills vs CodyMaster
|
|
206
207
|
|
|
207
|
-
|
|
208
|
-
|
|
|
209
|
-
|
|
|
210
|
-
| **
|
|
211
|
-
| **
|
|
212
|
-
| **
|
|
213
|
-
| **
|
|
214
|
-
| **
|
|
215
|
-
| **
|
|
216
|
-
| **
|
|
208
|
+
|
|
209
|
+
| | ๐ต 15 Random Skills | ๐ง CodyMaster |
|
|
210
|
+
| -------------------- | ------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
211
|
+
| **Integration** | Each skill is standalone, no shared context | 68+ skills that chain, share memory, and communicate |
|
|
212
|
+
| **Lifecycle** | Covers coding only | Covers Idea โ Design โ Code โ Test โ Deploy โ Docs โ Learn |
|
|
213
|
+
| **Memory** | Forgets everything between sessions | 5-tier Unified Brain: Sensory โ Working โ Long-term โ Semantic โ Structural + Cloud Brain, powered by SQLite + FTS5 by default with optional local semantic layers like `qmd`. |
|
|
214
|
+
| **Safety** | YOLO deploys | 4-layer protection: TDD โ Security โ Isolation โ Multi-gate deploy |
|
|
215
|
+
| **Design** | Random UI every time | Extracts & enforces design system + visual preview |
|
|
216
|
+
| **Documentation** | "Maybe write a README later" | Auto-generates complete docs, SOPs, API refs from code |
|
|
217
|
+
| **Self-improvement** | Static โ what you install is what you get | Advisory-driven self-healing: inspect telemetry โ diagnose โ repair with FIX / DERIVED / CAPTURED |
|
|
218
|
+
| **Maintenance** | Update 15 repos separately | One `npm i -g codymaster` updates everything |
|
|
219
|
+
|
|
217
220
|
|
|
218
221
|
---
|
|
219
222
|
|
|
@@ -242,47 +245,56 @@ If you prefer:
|
|
|
242
245
|
|
|
243
246
|
## ๐ 1-Minute Install
|
|
244
247
|
|
|
245
|
-
###
|
|
248
|
+
### โจ NEW: Claude Desktop Plugin (Zero Terminal Required)
|
|
249
|
+
|
|
250
|
+
The easiest way to install CodyMaster โ no npm, no terminal, no setup.
|
|
246
251
|
|
|
247
|
-
|
|
252
|
+
**Claude Desktop / Claude Cowork:**
|
|
253
|
+
|
|
254
|
+
Run the auto-installer to inject the MCP Servers into your Claude Desktop config automatically:
|
|
248
255
|
|
|
249
256
|
```bash
|
|
250
|
-
|
|
257
|
+
npx codymaster mcp-serve --install-claude
|
|
251
258
|
```
|
|
252
259
|
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
- **Restart** Claude Code, Cursor, or Gemini / Antigravity so they reload config and rules from disk.
|
|
256
|
-
- **Cursor:** rules go to **`~/.cursor/rules`** (always under your home folder, not wherever you ran the script). In Agent chat, run **`/add-plugin cody-master`**. To install rules **only inside one git repo**, run from that repo: `bash install.sh --cursor --cursor-project`.
|
|
257
|
-
- **Gemini / Antigravity:** skills live in `~/.gemini/antigravity/skills`. The installer **creates or appends** `~/.gemini/GEMINI.md` with `@~/.gemini/antigravity/skills/cm-skill-index/SKILL.md` when that hint is missing.
|
|
258
|
-
- **Claude Code:** if commands like `/cm:demo` do not appear, run `claude plugin marketplace add tody-agent/codymaster` then `claude plugin install cm@codymaster --scope user` (or `--scope project`).
|
|
259
|
-
- **Non-interactive:** `--all` skips the onboarding menu. For a single platform, add **`--yes`** (e.g. `bash install.sh --gemini --yes`).
|
|
260
|
+
All 68+ skills will be wired up instantly via MCP stdio. Remember to restart Claude Desktop to load the new config.
|
|
260
261
|
|
|
261
|
-
|
|
262
|
+
---
|
|
262
263
|
|
|
263
|
-
|
|
264
|
+
### 2. Install AI Skills (All Other Platforms)
|
|
264
265
|
|
|
265
|
-
|
|
266
|
+
CodyMaster uses **Native Plugin Extensions** for zero-friction installation. No bash scripts, no manual folder copying. Select your platform below:
|
|
266
267
|
|
|
268
|
+
**Claude Code CLI:**
|
|
267
269
|
```bash
|
|
268
|
-
|
|
269
|
-
|
|
270
|
+
claude plugin marketplace add tody-agent/codymaster
|
|
271
|
+
claude plugin install cm@codymaster --scope user
|
|
272
|
+
```
|
|
270
273
|
|
|
271
|
-
|
|
272
|
-
|
|
273
|
-
|
|
274
|
-
bash install.sh --gemini --profile knowledge
|
|
274
|
+
**Cursor (in Agent Chat):**
|
|
275
|
+
```text
|
|
276
|
+
/add-plugin cody-master
|
|
275
277
|
```
|
|
276
278
|
|
|
277
|
-
|
|
278
|
-
|
|
279
|
-
|
|
279
|
+
**Gemini CLI / Google Antigravity:**
|
|
280
|
+
```bash
|
|
281
|
+
gemini extensions install https://github.com/tody-agent/codymaster
|
|
282
|
+
```
|
|
283
|
+
*(Progressive disclosure: Add `@~/.gemini/antigravity/skills/cm-skill-index/SKILL.md` to your `GEMINI.md` to save tokens)*
|
|
280
284
|
|
|
281
|
-
|
|
285
|
+
**OpenCode / OpenClaw:**
|
|
286
|
+
Tell your agent:
|
|
287
|
+
```text
|
|
288
|
+
Fetch and follow instructions from https://raw.githubusercontent.com/tody-agent/codymaster/main/.opencode/INSTALL.md
|
|
289
|
+
```
|
|
282
290
|
|
|
283
|
-
|
|
291
|
+
**Codex:**
|
|
292
|
+
Tell your agent:
|
|
293
|
+
```text
|
|
294
|
+
Fetch and follow instructions from https://raw.githubusercontent.com/tody-agent/codymaster/main/.codex/INSTALL.md
|
|
295
|
+
```
|
|
284
296
|
|
|
285
|
-
###
|
|
297
|
+
### 3. Install Mission Control Dashboard (Optional but Recommended)
|
|
286
298
|
|
|
287
299
|
Visualize your progress, manage tasks, and track your 10x coding streak with Cody the Hamster ๐น.
|
|
288
300
|
|
|
@@ -319,22 +331,63 @@ The CLI will greet you and keep you organized on your long coding sessions!
|
|
|
319
331
|
โ โ ๐งฉ Browse Skills
|
|
320
332
|
```
|
|
321
333
|
|
|
322
|
-
|
|
334
|
+
---
|
|
335
|
+
|
|
336
|
+
## Use with Goose
|
|
337
|
+
|
|
338
|
+
CodyMaster works as a [Goose](https://block.github.io/goose/) MCP extension, giving Goose persistent memory, skill orchestration, and token management.
|
|
339
|
+
|
|
340
|
+
**3-step setup:**
|
|
341
|
+
|
|
342
|
+
```bash
|
|
343
|
+
# 1. Install CodyMaster
|
|
344
|
+
npm install -g codymaster
|
|
345
|
+
|
|
346
|
+
# 2. Get your Goose config snippet
|
|
347
|
+
cm mcp-serve --print-config
|
|
348
|
+
|
|
349
|
+
# 3. Paste the output into your Goose config (~/.config/goose/config.yaml)
|
|
350
|
+
```
|
|
351
|
+
|
|
352
|
+
See [full Goose integration guide](docs/integrations/goose.md) for details.
|
|
323
353
|
|
|
324
354
|
---
|
|
325
355
|
|
|
326
|
-
##
|
|
356
|
+
## ๐ฏ Real-World Use Cases
|
|
327
357
|
|
|
328
|
-
|
|
329
|
-
|
|
330
|
-
|
|
331
|
-
|
|
|
358
|
+
> **Tip:** Start any session with `/cm:start <your goal>` and CodyMaster will pick the right skills automatically.
|
|
359
|
+
|
|
360
|
+
|
|
361
|
+
| Scenario | Skills Used | What You Say |
|
|
362
|
+
| ------------------------------------------ | -------------------------------------------------------------------------------- | ------------------------------------ |
|
|
363
|
+
| ๐ **Fix a bug without breaking anything** | `cm-debugging` โ `cm-tdd` โ `cm-quality-gate` | *"Debug this crash"* |
|
|
364
|
+
| ๐ **Ship a feature safely** | `cm-planning` โ `cm-tdd` โ `cm-code-review` โ `cm-safe-deploy` | *"Build the login flow"* |
|
|
365
|
+
| ๐จ **Build a new UI from scratch** | `cm-ux-master` โ `cm-design-system` โ `cm-ui-preview` | *"Design the dashboard page"* |
|
|
366
|
+
| ๐ **Deploy to production** | `cm-secret-shield` โ `cm-security-gate` โ `cm-identity-guard` โ `cm-safe-deploy` | *"Deploy to prod"* |
|
|
367
|
+
| ๐ **Understand a legacy codebase** | `cm-codeintell` โ `cm-dockit` | *"What does this code do?"* |
|
|
368
|
+
| ๐ **Launch a landing page** | `cm-brainstorm-idea` โ `cm-cro-methodology` โ `cm-content-factory` | *"Build a landing page for my SaaS"* |
|
|
369
|
+
| ๐ **Add multi-language support** | `cm-safe-i18n` | *"Add Vietnamese and Japanese"* |
|
|
370
|
+
| ๐ **Start a new project** | `cm-project-bootstrap` โ `cm-planning` | *"Bootstrap a Next.js SaaS"* |
|
|
371
|
+
| ๐ง **Resume after a break** | `cm-continuity` โ `cm-status` | *"What was I working on?"* |
|
|
372
|
+
| ๐ญ **Scale SEO content** | `cm-content-factory` โ `cm-auto-publisher` โ `cm-ads-tracker` | *"Create 20 articles for my blog"* |
|
|
373
|
+
|
|
374
|
+
|
|
375
|
+
---
|
|
376
|
+
|
|
377
|
+
## ๐งฐ The 60+ Skill Arsenal
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
| Domain | Skills |
|
|
381
|
+
| -------------------- | --------------------------------------------------------------------------------------------------------------------------------------------- |
|
|
382
|
+
| ๐ง **Engineering** | `cm-tdd` `cm-debugging` `cm-quality-gate` `cm-test-gate` `cm-code-review` `cm-clean-code` |
|
|
383
|
+
| โ๏ธ **Operations** | `cm-safe-deploy` `cm-identity-guard` `cm-secret-shield` `cm-security-gate` `cm-git-worktrees` `cm-terminal` `cm-safe-i18n` |
|
|
332
384
|
| ๐จ **Product & UX** | `cm-planning` `cm-design-system` `cm-ux-master` `cm-ui-preview` `cm-project-bootstrap` `cm-jtbd` `cm-brainstorm-idea` `cm-dockit` `cm-readit` |
|
|
333
|
-
| ๐ **Growth & CRO**
|
|
334
|
-
| ๐ข **Enterprise**
|
|
335
|
-
| ๐งฌ **Self-Healing**
|
|
336
|
-
| ๐ฏ **Orchestration** | `cm-execution` `cm-continuity` `cm-deep-search` `cm-codeintell` `cm-how-it-work`
|
|
337
|
-
| ๐ฅ๏ธ **Workflow**
|
|
385
|
+
| ๐ **Growth & CRO** | `cm-content-factory` `cm-auto-publisher` `cm-ads-tracker` `cm-cro-methodology` `cm-growth-hacking` `cm-booking-calendar` `cm-google-form` |
|
|
386
|
+
| ๐ข **Enterprise** | `cm-reactor` `cm-notebooklm` |
|
|
387
|
+
| ๐งฌ **Self-Healing** | `cm-skill-health` `cm-skill-evolution` `cm-skill-search` `cm-skill-share` `cm-skill-chain` `cm-skill-mastery` `cm-skill-index` |
|
|
388
|
+
| ๐ฏ **Orchestration** | `cm-execution` `cm-continuity` `cm-deep-search` `cm-codeintell` `cm-how-it-work` |
|
|
389
|
+
| ๐ฅ๏ธ **Workflow** | `cm-start` `cm-dashboard` `cm-status` |
|
|
390
|
+
|
|
338
391
|
|
|
339
392
|
---
|
|
340
393
|
|
|
@@ -356,6 +409,7 @@ cm config [key] [value] โ Config helper
|
|
|
356
409
|
cm open โ Open dashboard in browser
|
|
357
410
|
cm browse โฆ โ Local Playwright browse daemon (QA)
|
|
358
411
|
cm guardian โฆ โ Destructive-command / path checks
|
|
412
|
+
cm index skills โ Zero-Token tech stack and skill local indexer
|
|
359
413
|
cm sprint โฆ โ Sprint pipeline + .cm/sprint
|
|
360
414
|
cm design-studio [init|status]
|
|
361
415
|
cm distro validate โฆ โ Validate skill pack layout
|
|
@@ -363,13 +417,9 @@ cm distro validate โฆ โ Validate skill pack layout
|
|
|
363
417
|
|
|
364
418
|
**Memory, bus, budgets, `cm://` resolution:** use the **MCP context server** โ see [docs/api/api-reference.md](docs/api/api-reference.md).
|
|
365
419
|
|
|
366
|
-
**Engineering (browse, guardian, sprint):** [docs/workflows/engineering-pipeline.md](docs/workflows/engineering-pipeline.md) ยท [docs/architecture/servers-and-mcp.md](docs/architecture/servers-and-mcp.md)
|
|
420
|
+
**Engineering (browse, guardian, sprint):** [docs/workflows/engineering-pipeline.md](docs/workflows/engineering-pipeline.md) ยท [docs/browse-daemon.md](docs/browse-daemon.md) ยท [docs/workflows/guardian-hooks.md](docs/workflows/guardian-hooks.md) ยท [docs/architecture/servers-and-mcp.md](docs/architecture/servers-and-mcp.md)
|
|
367
421
|
|
|
368
|
-
|
|
369
|
-
# OpenViking backend (optional โ semantic vector search)
|
|
370
|
-
pip install openviking && openviking start
|
|
371
|
-
# Then set storage.backend: viking in .cm/config.yaml
|
|
372
|
-
```
|
|
422
|
+
Legacy configs that still say `storage.backend: viking` are automatically routed back to SQLite.
|
|
373
423
|
|
|
374
424
|
**Slash Commands (inside AI agents):**
|
|
375
425
|
|
|
@@ -398,7 +448,7 @@ pip install openviking && openviking start
|
|
|
398
448
|
- ๐ [Website](https://cody.todyle.com) โ Overview & demos
|
|
399
449
|
- ๐ [Documentation (site)](https://cody.todyle.com/docs) โ Hosted deep-dive
|
|
400
450
|
- ๐ [Documentation (repo)](docs/index.md) โ Markdown source; run `npm run docs:dev` for VitePress
|
|
401
|
-
- ๐ ๏ธ [Skills Reference](skills/) โ Browse **56** bundled `cm
|
|
451
|
+
- ๐ ๏ธ [Skills Reference](skills/) โ Browse **56** bundled `cm-`* SKILL.md packs (profiles/installer can add more)
|
|
402
452
|
- ๐ [Our Story](https://cody.todyle.com/story) โ Why this exists
|
|
403
453
|
|
|
404
454
|
---
|
|
@@ -413,11 +463,8 @@ CI runs `npm ci` and `npm run test:gate:kit` on pushes and pull requests (see `.
|
|
|
413
463
|
|
|
414
464
|
---
|
|
415
465
|
|
|
416
|
-
|
|
466
|
+
*ISC License โ Free to use, modify, and distribute.*
|
|
417
467
|
|
|
418
|
-
*ISC License โ Free to use, modify, and distribute.* <br/>
|
|
419
468
|
**Built with โค๏ธ for the vibe coding community.**
|
|
420
469
|
|
|
421
470
|
*"CodyMaster" = "Code ฤi" (Vietnamese: "Go code!") โ just start building.*
|
|
422
|
-
|
|
423
|
-
</div>
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
exports.buildAdvisoryHandoff = buildAdvisoryHandoff;
|
|
4
|
+
exports.formatAdvisoryHandoffMarkdown = formatAdvisoryHandoffMarkdown;
|
|
5
|
+
const execution_analyzer_1 = require("./execution-analyzer");
|
|
6
|
+
function resolveAnalysis(backend, options) {
|
|
7
|
+
var _a;
|
|
8
|
+
const analyses = backend.getExecutionAnalyses((_a = options.searchLimit) !== null && _a !== void 0 ? _a : 50);
|
|
9
|
+
if (analyses.length === 0) {
|
|
10
|
+
throw new Error('No execution analyses recorded yet.');
|
|
11
|
+
}
|
|
12
|
+
if (!options.analysisId)
|
|
13
|
+
return analyses[0];
|
|
14
|
+
const match = analyses.find((analysis) => analysis.id.startsWith(options.analysisId));
|
|
15
|
+
if (!match) {
|
|
16
|
+
throw new Error(`No advisory analysis found for id prefix: ${options.analysisId}`);
|
|
17
|
+
}
|
|
18
|
+
return match;
|
|
19
|
+
}
|
|
20
|
+
function resolveSkillName(analysis, explicitSkill) {
|
|
21
|
+
var _a;
|
|
22
|
+
if (explicitSkill)
|
|
23
|
+
return explicitSkill;
|
|
24
|
+
return (_a = analysis.skill_judgments.find((judgment) => judgment.selected || judgment.applied)) === null || _a === void 0 ? void 0 : _a.skill;
|
|
25
|
+
}
|
|
26
|
+
function buildNextStep(consumer, action, skill) {
|
|
27
|
+
const subject = skill !== null && skill !== void 0 ? skill : 'the affected skill';
|
|
28
|
+
if (consumer === 'cm-skill-health') {
|
|
29
|
+
return `Run cm-skill-health on ${subject} and confirm whether ${action} is still the truthful recovery path.`;
|
|
30
|
+
}
|
|
31
|
+
return `Run cm-skill-evolution in ${action} mode for ${subject} using this advisory evidence as the starting note.`;
|
|
32
|
+
}
|
|
33
|
+
function buildAdvisoryHandoff(backend, options) {
|
|
34
|
+
var _a, _b;
|
|
35
|
+
const analysis = resolveAnalysis(backend, options);
|
|
36
|
+
const skillName = resolveSkillName(analysis, options.skill);
|
|
37
|
+
const judgment = skillName
|
|
38
|
+
? analysis.skill_judgments.find((item) => item.skill === skillName)
|
|
39
|
+
: undefined;
|
|
40
|
+
const metric = skillName ? backend.getSkillMetric(skillName) : null;
|
|
41
|
+
const action = (_a = analysis.recommended_action) !== null && _a !== void 0 ? _a : 'NONE';
|
|
42
|
+
return {
|
|
43
|
+
version: 1,
|
|
44
|
+
generated_at: new Date().toISOString(),
|
|
45
|
+
consumer: options.consumer,
|
|
46
|
+
recommendation: {
|
|
47
|
+
action,
|
|
48
|
+
confidence: analysis.confidence,
|
|
49
|
+
},
|
|
50
|
+
source: {
|
|
51
|
+
analysis_id: analysis.id,
|
|
52
|
+
task_title: analysis.task_title,
|
|
53
|
+
task_status: analysis.status,
|
|
54
|
+
source_task_type: analysis.source_task_type,
|
|
55
|
+
created_at: analysis.created_at,
|
|
56
|
+
},
|
|
57
|
+
skill: {
|
|
58
|
+
name: skillName,
|
|
59
|
+
judgment,
|
|
60
|
+
metric: metric ? Object.assign(Object.assign({}, metric), { quality_weight: (0, execution_analyzer_1.qualityWeight)(metric) }) : null,
|
|
61
|
+
},
|
|
62
|
+
evidence: {
|
|
63
|
+
summary: analysis.summary,
|
|
64
|
+
selected_skills: (_b = analysis.selected_skills) !== null && _b !== void 0 ? _b : [],
|
|
65
|
+
target_skills: analysis.skill_judgments
|
|
66
|
+
.filter((item) => item.selected || item.applied)
|
|
67
|
+
.map((item) => item.skill),
|
|
68
|
+
},
|
|
69
|
+
next_step: buildNextStep(options.consumer, action, skillName),
|
|
70
|
+
};
|
|
71
|
+
}
|
|
72
|
+
function formatAdvisoryHandoffMarkdown(handoff) {
|
|
73
|
+
var _a, _b, _c;
|
|
74
|
+
return [
|
|
75
|
+
'## Advisory Handoff',
|
|
76
|
+
`- Consumer: ${handoff.consumer}`,
|
|
77
|
+
`- Skill: ${(_a = handoff.skill.name) !== null && _a !== void 0 ? _a : '-'}`,
|
|
78
|
+
`- Recovery path: ${handoff.recommendation.action}`,
|
|
79
|
+
`- Confidence: ${(_c = (_b = handoff.recommendation.confidence) === null || _b === void 0 ? void 0 : _b.toFixed(2)) !== null && _c !== void 0 ? _c : '-'}`,
|
|
80
|
+
`- Source analysis: ${handoff.source.analysis_id}`,
|
|
81
|
+
`- Task: ${handoff.source.task_title}`,
|
|
82
|
+
`- Status: ${handoff.source.task_status}`,
|
|
83
|
+
`- Evidence: ${handoff.evidence.summary}`,
|
|
84
|
+
`- Selected skills: ${handoff.evidence.selected_skills.join(', ') || '-'}`,
|
|
85
|
+
`- Target skills: ${handoff.evidence.target_skills.join(', ') || '-'}`,
|
|
86
|
+
`- Quality weight: ${handoff.skill.metric ? handoff.skill.metric.quality_weight.toFixed(2) : '-'}`,
|
|
87
|
+
`- Next step: ${handoff.next_step}`,
|
|
88
|
+
].join('\n');
|
|
89
|
+
}
|