@alevental/cccp 0.2.0 → 0.2.2
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/dist/cli.js +1 -1
- package/dist/scaffold/index.d.ts +2 -2
- package/dist/scaffold/index.js +42 -24
- package/dist/scaffold/index.js.map +1 -1
- package/package.json +1 -1
package/dist/cli.js
CHANGED
|
@@ -9,7 +9,7 @@ const program = new Command();
|
|
|
9
9
|
program
|
|
10
10
|
.name("cccp")
|
|
11
11
|
.description("Claude Code and Cmux Pipeline Reagent — deterministic YAML-based pipeline orchestration")
|
|
12
|
-
.version("0.2.
|
|
12
|
+
.version("0.2.2");
|
|
13
13
|
program
|
|
14
14
|
.command("run")
|
|
15
15
|
.description("Run a pipeline from a YAML definition")
|
package/dist/scaffold/index.d.ts
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Scaffold a
|
|
3
|
-
* and
|
|
2
|
+
* Scaffold a CCCP project: cccp.yaml, skills, and MCP server registration.
|
|
3
|
+
* Agents and pipelines are scaffolded separately via `cccp examples`.
|
|
4
4
|
*/
|
|
5
5
|
export declare function scaffoldProject(dir: string): Promise<void>;
|
|
6
6
|
export interface ExamplesOptions {
|
package/dist/scaffold/index.js
CHANGED
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { resolve, dirname } from "node:path";
|
|
2
2
|
import { writeFile, mkdir, readdir, readFile, access } from "node:fs/promises";
|
|
3
3
|
import { fileURLToPath } from "node:url";
|
|
4
|
-
import { cccpYaml,
|
|
5
|
-
//
|
|
4
|
+
import { cccpYaml,
|
|
5
|
+
// Agents used by scaffoldExamples
|
|
6
6
|
researcherAgent, writerAgent, reviewerAgent, architectBase,
|
|
7
7
|
// Remaining flat agents
|
|
8
8
|
implementerAgent, codeReviewerAgent, analystAgent, copywriterAgent, growthStrategistAgent, execReviewerAgent, devopsAgent, opsManagerAgent,
|
|
@@ -84,41 +84,59 @@ async function scaffoldSkills(targetDir) {
|
|
|
84
84
|
return count;
|
|
85
85
|
}
|
|
86
86
|
// ---------------------------------------------------------------------------
|
|
87
|
+
// MCP server registration
|
|
88
|
+
// ---------------------------------------------------------------------------
|
|
89
|
+
/**
|
|
90
|
+
* Ensure the cccp MCP server is registered in `.mcp.json`.
|
|
91
|
+
* Creates the file if it doesn't exist. Adds the entry if missing.
|
|
92
|
+
* Returns true if the file was created or modified.
|
|
93
|
+
*/
|
|
94
|
+
async function ensureMcpServer(dir) {
|
|
95
|
+
const mcpPath = resolve(dir, ".mcp.json");
|
|
96
|
+
const entry = { command: "npx", args: ["@alevental/cccp", "mcp-server"] };
|
|
97
|
+
let config;
|
|
98
|
+
try {
|
|
99
|
+
const raw = await readFile(mcpPath, "utf-8");
|
|
100
|
+
config = JSON.parse(raw);
|
|
101
|
+
}
|
|
102
|
+
catch {
|
|
103
|
+
config = {};
|
|
104
|
+
}
|
|
105
|
+
if (!config.mcpServers || typeof config.mcpServers !== "object") {
|
|
106
|
+
config.mcpServers = {};
|
|
107
|
+
}
|
|
108
|
+
const servers = config.mcpServers;
|
|
109
|
+
if (servers.cccp)
|
|
110
|
+
return false; // already registered
|
|
111
|
+
servers.cccp = entry;
|
|
112
|
+
await writeFile(mcpPath, JSON.stringify(config, null, 2) + "\n", "utf-8");
|
|
113
|
+
return true;
|
|
114
|
+
}
|
|
115
|
+
// ---------------------------------------------------------------------------
|
|
87
116
|
// cccp init — minimal scaffold
|
|
88
117
|
// ---------------------------------------------------------------------------
|
|
89
118
|
/**
|
|
90
|
-
* Scaffold a
|
|
91
|
-
* and
|
|
119
|
+
* Scaffold a CCCP project: cccp.yaml, skills, and MCP server registration.
|
|
120
|
+
* Agents and pipelines are scaffolded separately via `cccp examples`.
|
|
92
121
|
*/
|
|
93
122
|
export async function scaffoldProject(dir) {
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
const architectDir = resolve(agentsDir, "architect");
|
|
97
|
-
await mkdir(pipelinesDir, { recursive: true });
|
|
98
|
-
await mkdir(architectDir, { recursive: true });
|
|
99
|
-
// Config & pipeline
|
|
123
|
+
await mkdir(dir, { recursive: true });
|
|
124
|
+
// Config
|
|
100
125
|
await writeFile(resolve(dir, "cccp.yaml"), cccpYaml, "utf-8");
|
|
101
|
-
await writeFile(resolve(pipelinesDir, "example.yaml"), examplePipeline, "utf-8");
|
|
102
|
-
// Core agents referenced by example.yaml
|
|
103
|
-
await writeFile(resolve(agentsDir, "researcher.md"), researcherAgent, "utf-8");
|
|
104
|
-
await writeFile(resolve(agentsDir, "writer.md"), writerAgent, "utf-8");
|
|
105
|
-
await writeFile(resolve(agentsDir, "reviewer.md"), reviewerAgent, "utf-8");
|
|
106
|
-
await writeFile(resolve(architectDir, "agent.md"), architectBase, "utf-8");
|
|
107
126
|
// Skills
|
|
108
127
|
const skillCount = await scaffoldSkills(dir);
|
|
128
|
+
// MCP server registration
|
|
129
|
+
const mcpUpdated = await ensureMcpServer(dir);
|
|
109
130
|
console.log(`Scaffolded CCCP project in ${dir}:\n`);
|
|
110
131
|
console.log(` cccp.yaml — project configuration`);
|
|
111
|
-
console.log(` pipelines/example.yaml — example pipeline\n`);
|
|
112
|
-
console.log(` .claude/agents/researcher.md — research agent`);
|
|
113
|
-
console.log(` .claude/agents/writer.md — document writer`);
|
|
114
|
-
console.log(` .claude/agents/reviewer.md — contract & evaluation agent`);
|
|
115
|
-
console.log(` .claude/agents/architect/agent.md — system architect\n`);
|
|
116
132
|
if (skillCount > 0) {
|
|
117
133
|
console.log(` .claude/skills/cccp-run/SKILL.md — /cccp-run skill`);
|
|
118
|
-
console.log(` .claude/skills/cccp-pipeline/SKILL.md — /cccp-pipeline skill
|
|
134
|
+
console.log(` .claude/skills/cccp-pipeline/SKILL.md — /cccp-pipeline skill`);
|
|
135
|
+
}
|
|
136
|
+
if (mcpUpdated) {
|
|
137
|
+
console.log(` .mcp.json — MCP server (cccp) registered`);
|
|
119
138
|
}
|
|
120
|
-
console.log(
|
|
121
|
-
console.log(`\nFor all agents and example pipelines: npx @alevental/cccp examples`);
|
|
139
|
+
console.log(`\nFor agents and example pipelines: npx @alevental/cccp examples`);
|
|
122
140
|
}
|
|
123
141
|
/**
|
|
124
142
|
* Scaffold the full set of template agents and example pipelines.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scaffold/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AAC7C,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,EAAE,MAAM,kBAAkB,CAAC;AAC/E,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAC;AACzC,OAAO,EACL,QAAQ
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/scaffold/index.ts"],"names":[],"mappings":"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"}
|