@alevental/cccp 0.1.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.
Files changed (127) hide show
  1. package/.claude/skills/cccp-pipeline/SKILL.md +562 -0
  2. package/.claude/skills/cccp-run/SKILL.md +111 -0
  3. package/README.md +280 -0
  4. package/dist/activity-bus.d.ts +9 -0
  5. package/dist/activity-bus.js +10 -0
  6. package/dist/activity-bus.js.map +1 -0
  7. package/dist/agent-resolver.d.ts +29 -0
  8. package/dist/agent-resolver.js +122 -0
  9. package/dist/agent-resolver.js.map +1 -0
  10. package/dist/agent.d.ts +39 -0
  11. package/dist/agent.js +117 -0
  12. package/dist/agent.js.map +1 -0
  13. package/dist/autoresearch.d.ts +11 -0
  14. package/dist/autoresearch.js +295 -0
  15. package/dist/autoresearch.js.map +1 -0
  16. package/dist/cli.d.ts +2 -0
  17. package/dist/cli.js +157 -0
  18. package/dist/cli.js.map +1 -0
  19. package/dist/config.d.ts +126 -0
  20. package/dist/config.js +76 -0
  21. package/dist/config.js.map +1 -0
  22. package/dist/context.d.ts +24 -0
  23. package/dist/context.js +82 -0
  24. package/dist/context.js.map +1 -0
  25. package/dist/contract.d.ts +26 -0
  26. package/dist/contract.js +65 -0
  27. package/dist/contract.js.map +1 -0
  28. package/dist/db.d.ts +70 -0
  29. package/dist/db.js +358 -0
  30. package/dist/db.js.map +1 -0
  31. package/dist/dispatcher.d.ts +9 -0
  32. package/dist/dispatcher.js +7 -0
  33. package/dist/dispatcher.js.map +1 -0
  34. package/dist/errors.d.ts +16 -0
  35. package/dist/errors.js +30 -0
  36. package/dist/errors.js.map +1 -0
  37. package/dist/evaluator.d.ts +23 -0
  38. package/dist/evaluator.js +49 -0
  39. package/dist/evaluator.js.map +1 -0
  40. package/dist/gate/auto-approve.d.ts +9 -0
  41. package/dist/gate/auto-approve.js +11 -0
  42. package/dist/gate/auto-approve.js.map +1 -0
  43. package/dist/gate/gate-strategy.d.ts +22 -0
  44. package/dist/gate/gate-strategy.js +2 -0
  45. package/dist/gate/gate-strategy.js.map +1 -0
  46. package/dist/gate/gate-watcher.d.ts +15 -0
  47. package/dist/gate/gate-watcher.js +64 -0
  48. package/dist/gate/gate-watcher.js.map +1 -0
  49. package/dist/logger.d.ts +24 -0
  50. package/dist/logger.js +22 -0
  51. package/dist/logger.js.map +1 -0
  52. package/dist/mcp/gate-notifier.d.ts +26 -0
  53. package/dist/mcp/gate-notifier.js +161 -0
  54. package/dist/mcp/gate-notifier.js.map +1 -0
  55. package/dist/mcp/mcp-config.d.ts +25 -0
  56. package/dist/mcp/mcp-config.js +80 -0
  57. package/dist/mcp/mcp-config.js.map +1 -0
  58. package/dist/mcp/mcp-server.d.ts +1 -0
  59. package/dist/mcp/mcp-server.js +262 -0
  60. package/dist/mcp/mcp-server.js.map +1 -0
  61. package/dist/pge.d.ts +12 -0
  62. package/dist/pge.js +361 -0
  63. package/dist/pge.js.map +1 -0
  64. package/dist/pipeline.d.ts +6 -0
  65. package/dist/pipeline.js +120 -0
  66. package/dist/pipeline.js.map +1 -0
  67. package/dist/prompt.d.ts +67 -0
  68. package/dist/prompt.js +121 -0
  69. package/dist/prompt.js.map +1 -0
  70. package/dist/runner.d.ts +11 -0
  71. package/dist/runner.js +494 -0
  72. package/dist/runner.js.map +1 -0
  73. package/dist/scaffold/index.d.ts +14 -0
  74. package/dist/scaffold/index.js +260 -0
  75. package/dist/scaffold/index.js.map +1 -0
  76. package/dist/scaffold/templates.d.ts +47 -0
  77. package/dist/scaffold/templates.js +2177 -0
  78. package/dist/scaffold/templates.js.map +1 -0
  79. package/dist/stage-helpers.d.ts +7 -0
  80. package/dist/stage-helpers.js +27 -0
  81. package/dist/stage-helpers.js.map +1 -0
  82. package/dist/state.d.ts +43 -0
  83. package/dist/state.js +177 -0
  84. package/dist/state.js.map +1 -0
  85. package/dist/stream/stream-tail.d.ts +17 -0
  86. package/dist/stream/stream-tail.js +95 -0
  87. package/dist/stream/stream-tail.js.map +1 -0
  88. package/dist/stream/stream.d.ts +142 -0
  89. package/dist/stream/stream.js +251 -0
  90. package/dist/stream/stream.js.map +1 -0
  91. package/dist/temp-tracker.d.ts +6 -0
  92. package/dist/temp-tracker.js +24 -0
  93. package/dist/temp-tracker.js.map +1 -0
  94. package/dist/tui/cmux.d.ts +22 -0
  95. package/dist/tui/cmux.js +82 -0
  96. package/dist/tui/cmux.js.map +1 -0
  97. package/dist/tui/components.d.ts +21 -0
  98. package/dist/tui/components.js +108 -0
  99. package/dist/tui/components.js.map +1 -0
  100. package/dist/tui/dashboard.d.ts +6 -0
  101. package/dist/tui/dashboard.js +125 -0
  102. package/dist/tui/dashboard.js.map +1 -0
  103. package/dist/tui/detail-log.d.ts +10 -0
  104. package/dist/tui/detail-log.js +171 -0
  105. package/dist/tui/detail-log.js.map +1 -0
  106. package/dist/types.d.ts +273 -0
  107. package/dist/types.js +2 -0
  108. package/dist/types.js.map +1 -0
  109. package/examples/agents/diff-evaluator.md +57 -0
  110. package/examples/agents/prompt-tuner.md +30 -0
  111. package/examples/agents/summarizer.md +14 -0
  112. package/examples/autoresearch-artifacts/expected-output.md +17 -0
  113. package/examples/autoresearch-artifacts/prompt.md +35 -0
  114. package/examples/autoresearch-artifacts/source-material.md +28 -0
  115. package/examples/business-case.yaml +41 -0
  116. package/examples/cccp.yaml +48 -0
  117. package/examples/content-calendar.yaml +59 -0
  118. package/examples/customer-feedback-loop.yaml +44 -0
  119. package/examples/design-sprint.yaml +54 -0
  120. package/examples/feature-development.yaml +96 -0
  121. package/examples/growth-experiment.yaml +49 -0
  122. package/examples/incident-runbook.yaml +43 -0
  123. package/examples/product-launch.yaml +85 -0
  124. package/examples/prompt-tuning.yaml +25 -0
  125. package/examples/quarterly-planning.yaml +51 -0
  126. package/examples/sprint-cycle.yaml +67 -0
  127. package/package.json +47 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pge.js","sourceRoot":"","sources":["../src/pge.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,6 @@
1
+ import type { Pipeline } from "./types.js";
2
+ /**
3
+ * Load and validate a pipeline YAML file.
4
+ * Throws with a clear message if the file is missing or the schema is invalid.
5
+ */
6
+ export declare function loadPipeline(filePath: string): Promise<Pipeline>;
@@ -0,0 +1,120 @@
1
+ import { readFile } from "node:fs/promises";
2
+ import { parse as parseYaml } from "yaml";
3
+ import { z } from "zod";
4
+ // ---------------------------------------------------------------------------
5
+ // Zod schemas — validate raw YAML into typed Pipeline objects
6
+ // ---------------------------------------------------------------------------
7
+ const AgentStageSchema = z.object({
8
+ name: z.string(),
9
+ task: z.string().optional(),
10
+ task_file: z.string().optional(),
11
+ type: z.literal("agent"),
12
+ agent: z.string(),
13
+ operation: z.string().optional(),
14
+ mcp_profile: z.string().optional(),
15
+ inputs: z.array(z.string()).optional(),
16
+ output: z.string().optional(),
17
+ allowed_tools: z.array(z.string()).optional(),
18
+ variables: z.record(z.string()).optional(),
19
+ });
20
+ const PgeAgentConfigSchema = z.object({
21
+ agent: z.string(),
22
+ operation: z.string().optional(),
23
+ mcp_profile: z.string().optional(),
24
+ allowed_tools: z.array(z.string()).optional(),
25
+ inputs: z.array(z.string()).optional(),
26
+ });
27
+ const PgeStageSchema = z.object({
28
+ name: z.string(),
29
+ task: z.string().optional(),
30
+ task_file: z.string().optional(),
31
+ type: z.literal("pge"),
32
+ mcp_profile: z.string().optional(),
33
+ plan: z.string().optional(),
34
+ inputs: z.array(z.string()).optional(),
35
+ planner: PgeAgentConfigSchema,
36
+ generator: PgeAgentConfigSchema,
37
+ evaluator: PgeAgentConfigSchema,
38
+ contract: z.object({
39
+ deliverable: z.string(),
40
+ template: z.string().optional(),
41
+ guidance: z.string().optional(),
42
+ max_iterations: z.number().int().min(1).max(10),
43
+ }),
44
+ on_fail: z.enum(["stop", "human_gate", "skip"]).optional(),
45
+ variables: z.record(z.string()).optional(),
46
+ });
47
+ const AutoresearchStageSchema = z.object({
48
+ name: z.string(),
49
+ task: z.string().optional(),
50
+ task_file: z.string().optional(),
51
+ type: z.literal("autoresearch"),
52
+ mcp_profile: z.string().optional(),
53
+ artifact: z.string(),
54
+ ground_truth: z.string(),
55
+ output: z.string(),
56
+ inputs: z.array(z.string()).optional(),
57
+ adjuster: PgeAgentConfigSchema,
58
+ executor: PgeAgentConfigSchema,
59
+ evaluator: PgeAgentConfigSchema,
60
+ max_iterations: z.number().int().min(1).optional(),
61
+ on_fail: z.enum(["stop", "human_gate", "skip"]).optional(),
62
+ variables: z.record(z.string()).optional(),
63
+ });
64
+ const HumanGateStageSchema = z.object({
65
+ name: z.string(),
66
+ task: z.string().optional(),
67
+ task_file: z.string().optional(),
68
+ type: z.literal("human_gate"),
69
+ mcp_profile: z.string().optional(),
70
+ artifacts: z.array(z.string()).optional(),
71
+ prompt: z.string().optional(),
72
+ on_reject: z.enum(["retry", "stop"]).optional(),
73
+ variables: z.record(z.string()).optional(),
74
+ });
75
+ const StageSchema = z.discriminatedUnion("type", [
76
+ AgentStageSchema,
77
+ PgeStageSchema,
78
+ HumanGateStageSchema,
79
+ AutoresearchStageSchema,
80
+ ]);
81
+ const PipelineSchema = z.object({
82
+ name: z.string(),
83
+ description: z.string().optional(),
84
+ variables: z.record(z.string()).optional(),
85
+ stages: z.array(StageSchema).min(1),
86
+ });
87
+ // ---------------------------------------------------------------------------
88
+ // Public API
89
+ // ---------------------------------------------------------------------------
90
+ /**
91
+ * Load and validate a pipeline YAML file.
92
+ * Throws with a clear message if the file is missing or the schema is invalid.
93
+ */
94
+ export async function loadPipeline(filePath) {
95
+ let raw;
96
+ try {
97
+ raw = await readFile(filePath, "utf-8");
98
+ }
99
+ catch (err) {
100
+ throw new Error(`Cannot read pipeline file: ${filePath}`, { cause: err });
101
+ }
102
+ let parsed;
103
+ try {
104
+ parsed = parseYaml(raw);
105
+ }
106
+ catch (err) {
107
+ throw new Error(`Invalid YAML in pipeline file: ${filePath}`, {
108
+ cause: err,
109
+ });
110
+ }
111
+ const result = PipelineSchema.safeParse(parsed);
112
+ if (!result.success) {
113
+ const issues = result.error.issues
114
+ .map((i) => ` - ${i.path.join(".")}: ${i.message}`)
115
+ .join("\n");
116
+ throw new Error(`Pipeline validation failed for ${filePath}:\n${issues}`);
117
+ }
118
+ return result.data;
119
+ }
120
+ //# sourceMappingURL=pipeline.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"pipeline.js","sourceRoot":"","sources":["../src/pipeline.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,67 @@
1
+ import type { TempFileTracker } from "./temp-tracker.js";
2
+ /**
3
+ * Replace `{variable_name}` placeholders in a string with values from the
4
+ * variables map. Unresolved placeholders are left as-is.
5
+ */
6
+ export declare function interpolate(template: string, variables: Record<string, string>): string;
7
+ /**
8
+ * Resolve the task body for a stage. Reads from `task_file` if specified,
9
+ * otherwise returns the inline `task` string, otherwise the fallback.
10
+ *
11
+ * Throws if both `task` and `task_file` are set on the same stage.
12
+ */
13
+ export declare function resolveTaskBody(stage: {
14
+ task?: string;
15
+ task_file?: string;
16
+ name: string;
17
+ }, variables: Record<string, string>, fallback: string): Promise<string>;
18
+ /**
19
+ * Read an agent's markdown definition from disk.
20
+ *
21
+ * Supports two patterns:
22
+ * - **Flat file**: `agentPath` is a `.md` file → read it directly.
23
+ * - **Directory agent with operation**: `agentPath` is a directory containing
24
+ * `agent.md`, and `operationFile` is a sibling `.md` in that directory.
25
+ * The result concatenates `agent.md` + `\n\n---\n\n` + operation file.
26
+ */
27
+ export declare function loadAgentMarkdown(agentPath: string, operationFile?: string): Promise<string>;
28
+ export interface TaskContext {
29
+ /** What the agent should do. */
30
+ task: string;
31
+ /** Files the agent should read first. */
32
+ inputs?: string[];
33
+ /** Where the agent should write its output. */
34
+ output?: string;
35
+ /** Path to a previous evaluation (on retry iterations). */
36
+ previousEvaluation?: string;
37
+ /** Current iteration number (1-based). */
38
+ iteration?: number;
39
+ /** Max iterations allowed. */
40
+ maxIterations?: number;
41
+ /** Path to the contract file. */
42
+ contractPath?: string;
43
+ /** Path to a plan document containing the task reference. */
44
+ planFile?: string;
45
+ /** Path to a contract template the agent should follow. */
46
+ contractTemplate?: string;
47
+ /** Free-form guidance for the agent. */
48
+ guidance?: string;
49
+ /** Info about the deliverable the generator will produce. */
50
+ deliverableInfo?: string;
51
+ /** Path to the ground truth file (for autoresearch evaluation). */
52
+ groundTruthPath?: string;
53
+ /** When true, appends the evaluator output format (### Overall: PASS/FAIL). */
54
+ evaluatorFormat?: boolean;
55
+ /** Additional key-value context. */
56
+ extra?: Record<string, string>;
57
+ }
58
+ /**
59
+ * Build the user-prompt task context block that gets passed as the `-p` arg.
60
+ */
61
+ export declare function buildTaskContext(ctx: TaskContext): string;
62
+ /**
63
+ * Write agent markdown to a temp file and return the path.
64
+ * If a {@link TempFileTracker} is provided the path is registered for
65
+ * automatic cleanup; otherwise the caller (or the OS) is responsible.
66
+ */
67
+ export declare function writeSystemPromptFile(agentMarkdown: string, tracker?: TempFileTracker): Promise<string>;
package/dist/prompt.js ADDED
@@ -0,0 +1,121 @@
1
+ import { readFile, writeFile } from "node:fs/promises";
2
+ import { tmpdir } from "node:os";
3
+ import { join } from "node:path";
4
+ import { randomUUID } from "node:crypto";
5
+ // ---------------------------------------------------------------------------
6
+ // Variable interpolation
7
+ // ---------------------------------------------------------------------------
8
+ /**
9
+ * Replace `{variable_name}` placeholders in a string with values from the
10
+ * variables map. Unresolved placeholders are left as-is.
11
+ */
12
+ export function interpolate(template, variables) {
13
+ return template.replace(/\{(\w+)\}/g, (match, key) => {
14
+ return key in variables ? variables[key] : match;
15
+ });
16
+ }
17
+ // ---------------------------------------------------------------------------
18
+ // Task body resolution
19
+ // ---------------------------------------------------------------------------
20
+ /**
21
+ * Resolve the task body for a stage. Reads from `task_file` if specified,
22
+ * otherwise returns the inline `task` string, otherwise the fallback.
23
+ *
24
+ * Throws if both `task` and `task_file` are set on the same stage.
25
+ */
26
+ export async function resolveTaskBody(stage, variables, fallback) {
27
+ if (stage.task && stage.task_file) {
28
+ throw new Error(`Stage "${stage.name}": cannot specify both "task" and "task_file"`);
29
+ }
30
+ if (stage.task_file) {
31
+ const resolved = interpolate(stage.task_file, variables);
32
+ return readFile(resolved, "utf-8");
33
+ }
34
+ return stage.task ?? fallback;
35
+ }
36
+ // ---------------------------------------------------------------------------
37
+ // Agent markdown loading
38
+ // ---------------------------------------------------------------------------
39
+ /**
40
+ * Read an agent's markdown definition from disk.
41
+ *
42
+ * Supports two patterns:
43
+ * - **Flat file**: `agentPath` is a `.md` file → read it directly.
44
+ * - **Directory agent with operation**: `agentPath` is a directory containing
45
+ * `agent.md`, and `operationFile` is a sibling `.md` in that directory.
46
+ * The result concatenates `agent.md` + `\n\n---\n\n` + operation file.
47
+ */
48
+ export async function loadAgentMarkdown(agentPath, operationFile) {
49
+ const base = await readFile(agentPath, "utf-8");
50
+ if (!operationFile) {
51
+ return base;
52
+ }
53
+ const opContent = await readFile(operationFile, "utf-8");
54
+ return `${base}\n\n---\n\n${opContent}`;
55
+ }
56
+ /**
57
+ * Build the user-prompt task context block that gets passed as the `-p` arg.
58
+ */
59
+ export function buildTaskContext(ctx) {
60
+ const lines = [`# Task\n`, ctx.task, ""];
61
+ if (ctx.planFile) {
62
+ lines.push(`## Plan\n`, `Find the task described above in the plan document at: ${ctx.planFile}`, "");
63
+ }
64
+ if (ctx.contractPath) {
65
+ lines.push(`## Contract\n`, `Read the contract at: ${ctx.contractPath}`, "");
66
+ }
67
+ if (ctx.groundTruthPath) {
68
+ lines.push(`## Ground Truth\n`, `Compare the output against the expected result at: ${ctx.groundTruthPath}`, "");
69
+ }
70
+ if (ctx.inputs?.length) {
71
+ lines.push(`## Inputs\n`);
72
+ for (const input of ctx.inputs) {
73
+ lines.push(`- ${input}`);
74
+ }
75
+ lines.push("");
76
+ }
77
+ if (ctx.output) {
78
+ lines.push(`## Output\n`, `Write your output to: ${ctx.output}`, "");
79
+ }
80
+ if (ctx.previousEvaluation) {
81
+ lines.push(`## Previous Evaluation\n`, `Your previous attempt was evaluated. Read the feedback at: ${ctx.previousEvaluation}`, `Address all issues identified in the evaluation before producing your revised output.`, "");
82
+ }
83
+ if (ctx.contractTemplate) {
84
+ lines.push(`## Contract Template\n`, `Follow the structure in: ${ctx.contractTemplate}`, "");
85
+ }
86
+ if (ctx.guidance) {
87
+ lines.push(`## Guidance\n`, ctx.guidance, "");
88
+ }
89
+ if (ctx.deliverableInfo) {
90
+ lines.push(`## Deliverable\n`, ctx.deliverableInfo, "");
91
+ }
92
+ if (ctx.iteration != null && ctx.maxIterations != null) {
93
+ lines.push(`## Iteration\n`, `This is iteration ${ctx.iteration} of ${ctx.maxIterations}.`, "");
94
+ }
95
+ if (ctx.evaluatorFormat) {
96
+ lines.push(`## Evaluation Format\n`, `Your evaluation MUST end with exactly one of these lines:\n`, `### Overall: PASS\n`, `or\n`, `### Overall: FAIL\n`, `Use a criterion results table to justify your decision:\n`, `| # | Criterion | Result | Evidence |`, `|---|-----------|--------|----------|`, `| 1 | [name] | PASS/FAIL | [specific evidence] |`, "");
97
+ }
98
+ if (ctx.extra && Object.keys(ctx.extra).length > 0) {
99
+ lines.push(`## Context\n`);
100
+ for (const [k, v] of Object.entries(ctx.extra)) {
101
+ lines.push(`- **${k}**: ${v}`);
102
+ }
103
+ lines.push("");
104
+ }
105
+ return lines.join("\n");
106
+ }
107
+ // ---------------------------------------------------------------------------
108
+ // System prompt file (temp file for --system-prompt-file)
109
+ // ---------------------------------------------------------------------------
110
+ /**
111
+ * Write agent markdown to a temp file and return the path.
112
+ * If a {@link TempFileTracker} is provided the path is registered for
113
+ * automatic cleanup; otherwise the caller (or the OS) is responsible.
114
+ */
115
+ export async function writeSystemPromptFile(agentMarkdown, tracker) {
116
+ const filePath = join(tmpdir(), `cccp-agent-${randomUUID()}.md`);
117
+ await writeFile(filePath, agentMarkdown, "utf-8");
118
+ tracker?.track(filePath);
119
+ return filePath;
120
+ }
121
+ //# sourceMappingURL=prompt.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt.js","sourceRoot":"","sources":["../src/prompt.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,11 @@
1
+ import type { RunContext, PipelineResult, PipelineState } from "./types.js";
2
+ export interface RunOptions {
3
+ /** Existing state to resume from. If provided, completed stages are skipped. */
4
+ existingState?: PipelineState;
5
+ }
6
+ /**
7
+ * Run all stages in a pipeline sequentially.
8
+ * Persists state to disk after every stage transition.
9
+ * Returns the overall pipeline result.
10
+ */
11
+ export declare function runPipeline(ctx: RunContext, opts?: RunOptions): Promise<PipelineResult>;