@cardor/agent-harness-kit 0.14.0 → 0.15.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/bin/ahk.js +1 -1
- package/dist/chunk-LQ7SDMK6.js +82 -0
- package/dist/chunk-LQ7SDMK6.js.map +1 -0
- package/dist/cli.js +1984 -109
- package/dist/cli.js.map +1 -1
- package/dist/index.js +6 -1
- package/dist/index.js.map +1 -1
- package/package.json +13 -6
- package/dist/cli.d.ts +0 -2
- package/dist/cli.d.ts.map +0 -1
- package/dist/commands/build.d.ts +0 -6
- package/dist/commands/build.d.ts.map +0 -1
- package/dist/commands/build.js +0 -39
- package/dist/commands/build.js.map +0 -1
- package/dist/commands/dashboard.d.ts +0 -7
- package/dist/commands/dashboard.d.ts.map +0 -1
- package/dist/commands/dashboard.js +0 -27
- package/dist/commands/dashboard.js.map +0 -1
- package/dist/commands/export.d.ts +0 -8
- package/dist/commands/export.d.ts.map +0 -1
- package/dist/commands/export.js +0 -33
- package/dist/commands/export.js.map +0 -1
- package/dist/commands/health.d.ts +0 -2
- package/dist/commands/health.d.ts.map +0 -1
- package/dist/commands/health.js +0 -78
- package/dist/commands/health.js.map +0 -1
- package/dist/commands/init-helpers.d.ts +0 -9
- package/dist/commands/init-helpers.d.ts.map +0 -1
- package/dist/commands/init-helpers.js +0 -40
- package/dist/commands/init-helpers.js.map +0 -1
- package/dist/commands/init.d.ts +0 -9
- package/dist/commands/init.d.ts.map +0 -1
- package/dist/commands/init.js +0 -192
- package/dist/commands/init.js.map +0 -1
- package/dist/commands/migrate.d.ts +0 -6
- package/dist/commands/migrate.d.ts.map +0 -1
- package/dist/commands/migrate.js +0 -45
- package/dist/commands/migrate.js.map +0 -1
- package/dist/commands/serve.d.ts +0 -6
- package/dist/commands/serve.d.ts.map +0 -1
- package/dist/commands/serve.js +0 -13
- package/dist/commands/serve.js.map +0 -1
- package/dist/commands/status.d.ts +0 -6
- package/dist/commands/status.d.ts.map +0 -1
- package/dist/commands/status.js +0 -71
- package/dist/commands/status.js.map +0 -1
- package/dist/commands/sync.d.ts +0 -7
- package/dist/commands/sync.d.ts.map +0 -1
- package/dist/commands/sync.js +0 -57
- package/dist/commands/sync.js.map +0 -1
- package/dist/commands/task/add.d.ts +0 -2
- package/dist/commands/task/add.d.ts.map +0 -1
- package/dist/commands/task/add.js +0 -53
- package/dist/commands/task/add.js.map +0 -1
- package/dist/commands/task/done.d.ts +0 -2
- package/dist/commands/task/done.d.ts.map +0 -1
- package/dist/commands/task/done.js +0 -45
- package/dist/commands/task/done.js.map +0 -1
- package/dist/commands/task/index.d.ts +0 -4
- package/dist/commands/task/index.d.ts.map +0 -1
- package/dist/commands/task/index.js +0 -4
- package/dist/commands/task/index.js.map +0 -1
- package/dist/commands/task/list.d.ts +0 -7
- package/dist/commands/task/list.d.ts.map +0 -1
- package/dist/commands/task/list.js +0 -42
- package/dist/commands/task/list.js.map +0 -1
- package/dist/core/config.d.ts +0 -5
- package/dist/core/config.d.ts.map +0 -1
- package/dist/core/config.js +0 -77
- package/dist/core/config.js.map +0 -1
- package/dist/core/dashboard-server.d.ts +0 -7
- package/dist/core/dashboard-server.d.ts.map +0 -1
- package/dist/core/dashboard-server.js +0 -223
- package/dist/core/dashboard-server.js.map +0 -1
- package/dist/core/db.d.ts +0 -57
- package/dist/core/db.d.ts.map +0 -1
- package/dist/core/db.js +0 -348
- package/dist/core/db.js.map +0 -1
- package/dist/core/materializer/agent-templates/test123.txt +0 -0
- package/dist/core/materializer/claude-code.d.ts +0 -8
- package/dist/core/materializer/claude-code.d.ts.map +0 -1
- package/dist/core/materializer/claude-code.js +0 -66
- package/dist/core/materializer/claude-code.js.map +0 -1
- package/dist/core/materializer/index.d.ts +0 -8
- package/dist/core/materializer/index.d.ts.map +0 -1
- package/dist/core/materializer/index.js +0 -13
- package/dist/core/materializer/index.js.map +0 -1
- package/dist/core/materializer/mcp-merge.d.ts +0 -3
- package/dist/core/materializer/mcp-merge.d.ts.map +0 -1
- package/dist/core/materializer/mcp-merge.js +0 -59
- package/dist/core/materializer/mcp-merge.js.map +0 -1
- package/dist/core/materializer/opencode.d.ts +0 -8
- package/dist/core/materializer/opencode.d.ts.map +0 -1
- package/dist/core/materializer/opencode.js +0 -59
- package/dist/core/materializer/opencode.js.map +0 -1
- package/dist/core/materializer/scaffold-utils.d.ts +0 -4
- package/dist/core/materializer/scaffold-utils.d.ts.map +0 -1
- package/dist/core/materializer/scaffold-utils.js +0 -28
- package/dist/core/materializer/scaffold-utils.js.map +0 -1
- package/dist/core/materializer/templates.d.ts +0 -33
- package/dist/core/materializer/templates.d.ts.map +0 -1
- package/dist/core/materializer/templates.js +0 -187
- package/dist/core/materializer/templates.js.map +0 -1
- package/dist/core/mcp-server.d.ts +0 -3
- package/dist/core/mcp-server.d.ts.map +0 -1
- package/dist/core/mcp-server.js +0 -264
- package/dist/core/mcp-server.js.map +0 -1
- package/dist/core/server-types.d.ts +0 -67
- package/dist/core/server-types.d.ts.map +0 -1
- package/dist/core/server-types.js +0 -3
- package/dist/core/server-types.js.map +0 -1
- package/dist/core/sqlite-adapter.d.ts +0 -14
- package/dist/core/sqlite-adapter.d.ts.map +0 -1
- package/dist/core/sqlite-adapter.js +0 -20
- package/dist/core/sqlite-adapter.js.map +0 -1
- package/dist/dashboard-dist/assets/index-Cdm4QZ8j.js +0 -9
- package/dist/dashboard-dist/assets/index-DJInh0UZ.js +0 -9
- package/dist/dashboard-dist/assets/index-TQMzdmXs.css +0 -1
- package/dist/index.d.ts +0 -3
- package/dist/index.d.ts.map +0 -1
- package/dist/tests/db.test.d.ts +0 -2
- package/dist/tests/db.test.d.ts.map +0 -1
- package/dist/tests/db.test.js +0 -172
- package/dist/tests/db.test.js.map +0 -1
- package/dist/tests/slugify.test.d.ts +0 -2
- package/dist/tests/slugify.test.d.ts.map +0 -1
- package/dist/tests/slugify.test.js +0 -19
- package/dist/tests/slugify.test.js.map +0 -1
- package/dist/tests/templates.test.d.ts +0 -2
- package/dist/tests/templates.test.d.ts.map +0 -1
- package/dist/tests/templates.test.js +0 -71
- package/dist/tests/templates.test.js.map +0 -1
- package/dist/types.d.ts +0 -141
- package/dist/types.d.ts.map +0 -1
- package/dist/types.js +0 -3
- package/dist/types.js.map +0 -1
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold-utils.d.ts","sourceRoot":"","sources":["../../../src/core/materializer/scaffold-utils.ts"],"names":[],"mappings":"AAIA,wBAAgB,cAAc,CAAC,GAAG,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,IAAI,CAKlF;AAED,wBAAgB,eAAe,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAWjD;AAED,wBAAgB,OAAO,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAM7C"}
|
|
@@ -1,28 +0,0 @@
|
|
|
1
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from 'node:fs';
|
|
2
|
-
import { join, resolve } from 'node:path';
|
|
3
|
-
import { GITIGNORE_ENTRIES } from './templates.js';
|
|
4
|
-
export function writeAgentFile(cwd, relPath, content) {
|
|
5
|
-
const abs = join(cwd, relPath);
|
|
6
|
-
if (existsSync(abs))
|
|
7
|
-
return; // preserve dev customizations
|
|
8
|
-
mkdirSync(resolve(abs, '..'), { recursive: true });
|
|
9
|
-
writeFileSync(abs, content, 'utf8');
|
|
10
|
-
}
|
|
11
|
-
export function appendGitignore(cwd) {
|
|
12
|
-
const giPath = join(cwd, '.gitignore');
|
|
13
|
-
const existing = existsSync(giPath) ? readFileSync(giPath, 'utf8') : '';
|
|
14
|
-
const toAdd = GITIGNORE_ENTRIES.split('\n')
|
|
15
|
-
.filter((line) => line && !existing.includes(line))
|
|
16
|
-
.join('\n');
|
|
17
|
-
if (toAdd.trim()) {
|
|
18
|
-
writeFileSync(giPath, existing + (existing.endsWith('\n') ? '' : '\n') + toAdd + '\n', 'utf8');
|
|
19
|
-
}
|
|
20
|
-
}
|
|
21
|
-
export function slugify(title) {
|
|
22
|
-
return title
|
|
23
|
-
.toLowerCase()
|
|
24
|
-
.replace(/[^a-z0-9]+/g, '-')
|
|
25
|
-
.replace(/^-+|-+$/g, '')
|
|
26
|
-
.slice(0, 64);
|
|
27
|
-
}
|
|
28
|
-
//# sourceMappingURL=scaffold-utils.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"scaffold-utils.js","sourceRoot":"","sources":["../../../src/core/materializer/scaffold-utils.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,MAAM,SAAS,CAAA;AAC5E,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,iBAAiB,EAAE,MAAM,gBAAgB,CAAA;AAElD,MAAM,UAAU,cAAc,CAAC,GAAW,EAAE,OAAe,EAAE,OAAe;IAC1E,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,OAAO,CAAC,CAAA;IAC9B,IAAI,UAAU,CAAC,GAAG,CAAC;QAAE,OAAM,CAAE,8BAA8B;IAC3D,SAAS,CAAC,OAAO,CAAC,GAAG,EAAE,IAAI,CAAC,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAA;IAClD,aAAa,CAAC,GAAG,EAAE,OAAO,EAAE,MAAM,CAAC,CAAA;AACrC,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,GAAW;IACzC,MAAM,MAAM,GAAG,IAAI,CAAC,GAAG,EAAE,YAAY,CAAC,CAAA;IACtC,MAAM,QAAQ,GAAG,UAAU,CAAC,MAAM,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC,CAAC,CAAC,EAAE,CAAA;IAEvE,MAAM,KAAK,GAAG,iBAAiB,CAAC,KAAK,CAAC,IAAI,CAAC;SACxC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,IAAI,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;SAClD,IAAI,CAAC,IAAI,CAAC,CAAA;IAEb,IAAI,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QACjB,aAAa,CAAC,MAAM,EAAE,QAAQ,GAAG,CAAC,QAAQ,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,KAAK,GAAG,IAAI,EAAE,MAAM,CAAC,CAAA;IAChG,CAAC;AACH,CAAC;AAED,MAAM,UAAU,OAAO,CAAC,KAAa;IACnC,OAAO,KAAK;SACT,WAAW,EAAE;SACb,OAAO,CAAC,aAAa,EAAE,GAAG,CAAC;SAC3B,OAAO,CAAC,UAAU,EAAE,EAAE,CAAC;SACvB,KAAK,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;AACjB,CAAC"}
|
|
@@ -1,33 +0,0 @@
|
|
|
1
|
-
import type { HarnessConfig } from '../../types.js';
|
|
2
|
-
export declare const HEALTH_SH = "#!/usr/bin/env bash\n# health.sh \u2014 project health check for agent-harness-kit\n#\n# This script must exit 0 when the project is healthy.\n# Agents will run this before starting work.\n#\n# TODO: implement your project's health checks below.\n# Examples:\n# npm test\n# docker compose ps | grep -q \"running\"\n# psql -c \"SELECT 1\" > /dev/null 2>&1\n#\n# Until you implement it, this script intentionally exits 1\n# so agents know the environment is not verified.\n\necho \"health.sh not implemented yet.\"\necho \"Edit this file with your project's health checks.\"\necho \"It must exit 0 for agents to start working.\"\nexit 1\n";
|
|
3
|
-
export declare function agentsMd(config: HarnessConfig): string;
|
|
4
|
-
export declare function configTs(params: {
|
|
5
|
-
name: string;
|
|
6
|
-
description: string;
|
|
7
|
-
provider: string;
|
|
8
|
-
docsPath: string;
|
|
9
|
-
tasksAdapter: string;
|
|
10
|
-
port: number;
|
|
11
|
-
}): string;
|
|
12
|
-
export declare function agentLead(vars: {
|
|
13
|
-
projectName: string;
|
|
14
|
-
}): string;
|
|
15
|
-
export declare function agentExplorer(vars: {
|
|
16
|
-
projectName: string;
|
|
17
|
-
allowedPaths: string;
|
|
18
|
-
}): string;
|
|
19
|
-
export declare function agentBuilder(vars: {
|
|
20
|
-
projectName: string;
|
|
21
|
-
writablePaths: string;
|
|
22
|
-
}): string;
|
|
23
|
-
export declare function agentReviewer(vars: {
|
|
24
|
-
projectName: string;
|
|
25
|
-
}): string;
|
|
26
|
-
export declare function featureListJson(tasks: {
|
|
27
|
-
slug: string;
|
|
28
|
-
title: string;
|
|
29
|
-
description?: string;
|
|
30
|
-
acceptance?: string[];
|
|
31
|
-
}[]): string;
|
|
32
|
-
export declare const GITIGNORE_ENTRIES = "\n# agent-harness-kit\n.harness/harness.db\n.harness/harness.db-shm\n.harness/harness.db-wal\n.harness/current.md\n";
|
|
33
|
-
//# sourceMappingURL=templates.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"templates.d.ts","sourceRoot":"","sources":["../../../src/core/materializer/templates.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,gBAAgB,CAAA;AAqBnD,eAAO,MAAM,SAAS,uoBAmBrB,CAAA;AAID,wBAAgB,QAAQ,CAAC,MAAM,EAAE,aAAa,GAAG,MAAM,CA8EtD;AAID,wBAAgB,QAAQ,CAAC,MAAM,EAAE;IAC/B,IAAI,EAAE,MAAM,CAAA;IACZ,WAAW,EAAE,MAAM,CAAA;IACnB,QAAQ,EAAE,MAAM,CAAA;IAChB,QAAQ,EAAE,MAAM,CAAA;IAChB,YAAY,EAAE,MAAM,CAAA;IACpB,IAAI,EAAE,MAAM,CAAA;CACb,GAAG,MAAM,CA6CT;AAID,wBAAgB,SAAS,CAAC,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAE/D;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,YAAY,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEzF;AAED,wBAAgB,YAAY,CAAC,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEzF;AAED,wBAAgB,aAAa,CAAC,IAAI,EAAE;IAAE,WAAW,EAAE,MAAM,CAAA;CAAE,GAAG,MAAM,CAEnE;AAID,wBAAgB,eAAe,CAC7B,KAAK,EAAE;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAAC,UAAU,CAAC,EAAE,MAAM,EAAE,CAAA;CAAE,EAAE,GACpF,MAAM,CAER;AAID,eAAO,MAAM,iBAAiB,wHAM7B,CAAA"}
|
|
@@ -1,187 +0,0 @@
|
|
|
1
|
-
import { readFileSync } from 'node:fs';
|
|
2
|
-
import { join, dirname } from 'node:path';
|
|
3
|
-
import { fileURLToPath } from 'node:url';
|
|
4
|
-
// ─── Agent template loader ────────────────────────────────────────────────────
|
|
5
|
-
const __dirname = dirname(fileURLToPath(import.meta.url));
|
|
6
|
-
const TEMPLATES_DIR = join(__dirname, 'agent-templates');
|
|
7
|
-
/**
|
|
8
|
-
* Load an agent template file and interpolate {{variables}}.
|
|
9
|
-
* Variables are replaced using a simple {{key}} pattern.
|
|
10
|
-
*/
|
|
11
|
-
function loadAgentTemplate(name, vars = {}) {
|
|
12
|
-
const raw = readFileSync(join(TEMPLATES_DIR, `${name}.md`), 'utf8');
|
|
13
|
-
return raw.replace(/\{\{(\w+)\}\}/g, (_, key) => vars[key] ?? `{{${key}}}`);
|
|
14
|
-
}
|
|
15
|
-
// ─── health.sh — exits 1 until the dev implements it ─────────────────────────
|
|
16
|
-
export const HEALTH_SH = `#!/usr/bin/env bash
|
|
17
|
-
# health.sh — project health check for agent-harness-kit
|
|
18
|
-
#
|
|
19
|
-
# This script must exit 0 when the project is healthy.
|
|
20
|
-
# Agents will run this before starting work.
|
|
21
|
-
#
|
|
22
|
-
# TODO: implement your project's health checks below.
|
|
23
|
-
# Examples:
|
|
24
|
-
# npm test
|
|
25
|
-
# docker compose ps | grep -q "running"
|
|
26
|
-
# psql -c "SELECT 1" > /dev/null 2>&1
|
|
27
|
-
#
|
|
28
|
-
# Until you implement it, this script intentionally exits 1
|
|
29
|
-
# so agents know the environment is not verified.
|
|
30
|
-
|
|
31
|
-
echo "health.sh not implemented yet."
|
|
32
|
-
echo "Edit this file with your project's health checks."
|
|
33
|
-
echo "It must exit 0 for agents to start working."
|
|
34
|
-
exit 1
|
|
35
|
-
`;
|
|
36
|
-
// ─── AGENTS.md template ───────────────────────────────────────────────────────
|
|
37
|
-
export function agentsMd(config) {
|
|
38
|
-
const { name, description, docsPath } = config.project;
|
|
39
|
-
const port = config.tools.mcp.port;
|
|
40
|
-
return `# AGENTS.md — ${name}
|
|
41
|
-
|
|
42
|
-
> **Read this file first.** It is the navigation map for every AI agent working in this repository.
|
|
43
|
-
|
|
44
|
-
## Project
|
|
45
|
-
|
|
46
|
-
**${name}** — ${description}
|
|
47
|
-
|
|
48
|
-
## Health check (run before starting)
|
|
49
|
-
|
|
50
|
-
\`\`\`bash
|
|
51
|
-
bash health.sh
|
|
52
|
-
\`\`\`
|
|
53
|
-
|
|
54
|
-
If it exits non-zero, stop and report the issue. Do not proceed with tasks until health is green.
|
|
55
|
-
|
|
56
|
-
## Harness data (source of truth)
|
|
57
|
-
|
|
58
|
-
| File | Purpose |
|
|
59
|
-
|------|---------|
|
|
60
|
-
| \`.harness/harness.db\` | SQLite: all tasks, actions, file changes, tool calls |
|
|
61
|
-
| \`.harness/current.md\` | Markdown fallback — read this if MCP server is unavailable |
|
|
62
|
-
| \`.harness/feature_list.json\` | Human-editable task seed list |
|
|
63
|
-
|
|
64
|
-
## MCP tools (preferred)
|
|
65
|
-
|
|
66
|
-
The harness exposes tools via MCP server on port ${port}. Use these instead of reading files directly.
|
|
67
|
-
|
|
68
|
-
\`\`\`
|
|
69
|
-
actions.start taskId agent → start an action, returns actionId
|
|
70
|
-
actions.write actionId section text → record a section (result, tools_used, ...)
|
|
71
|
-
actions.complete actionId summary → close the action
|
|
72
|
-
actions.get taskId → full action history for a task
|
|
73
|
-
tasks.get [status] → list tasks (pending | in_progress | done | blocked)
|
|
74
|
-
tasks.claim id → atomically claim a pending task
|
|
75
|
-
tasks.update id status → change task status
|
|
76
|
-
docs.search query → search ${docsPath} for relevant content
|
|
77
|
-
\`\`\`
|
|
78
|
-
|
|
79
|
-
## Workflow
|
|
80
|
-
|
|
81
|
-
\`\`\`
|
|
82
|
-
1. INIT
|
|
83
|
-
- Run health.sh → exit 1 means stop
|
|
84
|
-
- tasks.get('in_progress') → resume if something is in progress
|
|
85
|
-
- tasks.get('pending') → pick lowest id
|
|
86
|
-
|
|
87
|
-
2. WORK (lead → explorer → builder → reviewer)
|
|
88
|
-
- Each agent calls actions.start(taskId, agentName) → actionId
|
|
89
|
-
- Records work with actions.write(actionId, section, content)
|
|
90
|
-
- Closes with actions.complete(actionId, summary)
|
|
91
|
-
|
|
92
|
-
3. CLOSE
|
|
93
|
-
- tasks.update(taskId, 'done')
|
|
94
|
-
- Run health.sh → must be green before closing
|
|
95
|
-
\`\`\`
|
|
96
|
-
|
|
97
|
-
## Agent roles
|
|
98
|
-
|
|
99
|
-
| Agent | Responsibility |
|
|
100
|
-
|-------|---------------|
|
|
101
|
-
| lead | Decomposes the task into a plan, assigns sub-agents |
|
|
102
|
-
| explorer | Reads and maps relevant code, never writes |
|
|
103
|
-
| builder | Implements the plan, writes files |
|
|
104
|
-
| reviewer | Verifies acceptance criteria, approves or blocks |
|
|
105
|
-
|
|
106
|
-
## What to read
|
|
107
|
-
|
|
108
|
-
\`\`\`
|
|
109
|
-
Always: .harness/current.md (or MCP tasks.get)
|
|
110
|
-
If implementing: ${docsPath}/
|
|
111
|
-
If orchestrating: Agent definition files in your provider's agents directory
|
|
112
|
-
\`\`\`
|
|
113
|
-
`;
|
|
114
|
-
}
|
|
115
|
-
// ─── agent-harness-kit.config.ts template ───────────────────────────────────────────
|
|
116
|
-
export function configTs(params) {
|
|
117
|
-
return `import { defineHarness } from '@cardor/agent-harness-kit'
|
|
118
|
-
|
|
119
|
-
export default defineHarness({
|
|
120
|
-
project: {
|
|
121
|
-
name: '${params.name}',
|
|
122
|
-
description: '${params.description}',
|
|
123
|
-
docsPath: '${params.docsPath}',
|
|
124
|
-
},
|
|
125
|
-
|
|
126
|
-
provider: '${params.provider}',
|
|
127
|
-
|
|
128
|
-
agents: {
|
|
129
|
-
lead: { instructionsPath: null },
|
|
130
|
-
explorer: { instructionsPath: null, allowedPaths: ['${params.docsPath}', './src'] },
|
|
131
|
-
builder: { instructionsPath: null, writablePaths: ['./src', './tests'] },
|
|
132
|
-
reviewer: { instructionsPath: null },
|
|
133
|
-
custom: [],
|
|
134
|
-
},
|
|
135
|
-
|
|
136
|
-
storage: {
|
|
137
|
-
dir: '.harness',
|
|
138
|
-
dbPath: '.harness/harness.db',
|
|
139
|
-
tasks: { adapter: '${params.tasksAdapter}' },
|
|
140
|
-
sections: {
|
|
141
|
-
toolsUsed: true,
|
|
142
|
-
filesModified: true,
|
|
143
|
-
result: true,
|
|
144
|
-
blockers: true,
|
|
145
|
-
nextSteps: false,
|
|
146
|
-
},
|
|
147
|
-
markdownFallback: { enabled: true, path: '.harness/current.md' },
|
|
148
|
-
},
|
|
149
|
-
|
|
150
|
-
health: {
|
|
151
|
-
scriptPath: './health.sh',
|
|
152
|
-
required: true,
|
|
153
|
-
},
|
|
154
|
-
|
|
155
|
-
tools: {
|
|
156
|
-
mcp: { enabled: true, port: ${params.port} },
|
|
157
|
-
scripts: { enabled: true, outputDir: './.harness/scripts' },
|
|
158
|
-
},
|
|
159
|
-
})
|
|
160
|
-
`;
|
|
161
|
-
}
|
|
162
|
-
// ─── Agent definition templates (loaded from agent-templates/*.md) ─────────────
|
|
163
|
-
export function agentLead(vars) {
|
|
164
|
-
return loadAgentTemplate('lead', vars);
|
|
165
|
-
}
|
|
166
|
-
export function agentExplorer(vars) {
|
|
167
|
-
return loadAgentTemplate('explorer', vars);
|
|
168
|
-
}
|
|
169
|
-
export function agentBuilder(vars) {
|
|
170
|
-
return loadAgentTemplate('builder', vars);
|
|
171
|
-
}
|
|
172
|
-
export function agentReviewer(vars) {
|
|
173
|
-
return loadAgentTemplate('reviewer', vars);
|
|
174
|
-
}
|
|
175
|
-
// ─── feature_list.json initial seed ──────────────────────────────────────────
|
|
176
|
-
export function featureListJson(tasks) {
|
|
177
|
-
return JSON.stringify(tasks, null, 2) + '\n';
|
|
178
|
-
}
|
|
179
|
-
// ─── .gitignore additions ─────────────────────────────────────────────────────
|
|
180
|
-
export const GITIGNORE_ENTRIES = `
|
|
181
|
-
# agent-harness-kit
|
|
182
|
-
.harness/harness.db
|
|
183
|
-
.harness/harness.db-shm
|
|
184
|
-
.harness/harness.db-wal
|
|
185
|
-
.harness/current.md
|
|
186
|
-
`;
|
|
187
|
-
//# sourceMappingURL=templates.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"templates.js","sourceRoot":"","sources":["../../../src/core/materializer/templates.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,SAAS,CAAA;AACtC,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,MAAM,WAAW,CAAA;AACzC,OAAO,EAAE,aAAa,EAAE,MAAM,UAAU,CAAA;AAGxC,iFAAiF;AAEjF,MAAM,SAAS,GAAG,OAAO,CAAC,aAAa,CAAC,MAAM,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAA;AACzD,MAAM,aAAa,GAAG,IAAI,CAAC,SAAS,EAAE,iBAAiB,CAAC,CAAA;AAExD;;;GAGG;AACH,SAAS,iBAAiB,CACxB,IAAkD,EAClD,OAA+B,EAAE;IAEjC,MAAM,GAAG,GAAG,YAAY,CAAC,IAAI,CAAC,aAAa,EAAE,GAAG,IAAI,KAAK,CAAC,EAAE,MAAM,CAAC,CAAA;IACnE,OAAO,GAAG,CAAC,OAAO,CAAC,gBAAgB,EAAE,CAAC,CAAC,EAAE,GAAW,EAAE,EAAE,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,KAAK,GAAG,IAAI,CAAC,CAAA;AACrF,CAAC;AAED,gFAAgF;AAEhF,MAAM,CAAC,MAAM,SAAS,GAAG;;;;;;;;;;;;;;;;;;;CAmBxB,CAAA;AAED,iFAAiF;AAEjF,MAAM,UAAU,QAAQ,CAAC,MAAqB;IAC5C,MAAM,EAAE,IAAI,EAAE,WAAW,EAAE,QAAQ,EAAE,GAAG,MAAM,CAAC,OAAO,CAAA;IACtD,MAAM,IAAI,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,CAAA;IAElC,OAAO,iBAAiB,IAAI;;;;;;IAM1B,IAAI,QAAQ,WAAW;;;;;;;;;;;;;;;;;;;;mDAoBwB,IAAI;;;;;;;;;;mDAUJ,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;mBAkCxC,QAAQ;;;CAG1B,CAAA;AACD,CAAC;AAED,uFAAuF;AAEvF,MAAM,UAAU,QAAQ,CAAC,MAOxB;IACC,OAAO;;;;aAII,MAAM,CAAC,IAAI;oBACJ,MAAM,CAAC,WAAW;iBACrB,MAAM,CAAC,QAAQ;;;eAGjB,MAAM,CAAC,QAAQ;;;;0DAI4B,MAAM,CAAC,QAAQ;;;;;;;;;0BAS/C,MAAM,CAAC,YAAY;;;;;;;;;;;;;;;;;sCAiBP,MAAM,CAAC,IAAI;;;;CAIhD,CAAA;AACD,CAAC;AAED,kFAAkF;AAElF,MAAM,UAAU,SAAS,CAAC,IAA6B;IACrD,OAAO,iBAAiB,CAAC,MAAM,EAAE,IAAI,CAAC,CAAA;AACxC,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAAmD;IAC/E,OAAO,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;AAC5C,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,IAAoD;IAC/E,OAAO,iBAAiB,CAAC,SAAS,EAAE,IAAI,CAAC,CAAA;AAC3C,CAAC;AAED,MAAM,UAAU,aAAa,CAAC,IAA6B;IACzD,OAAO,iBAAiB,CAAC,UAAU,EAAE,IAAI,CAAC,CAAA;AAC5C,CAAC;AAED,gFAAgF;AAEhF,MAAM,UAAU,eAAe,CAC7B,KAAqF;IAErF,OAAO,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,CAAA;AAC9C,CAAC;AAED,iFAAiF;AAEjF,MAAM,CAAC,MAAM,iBAAiB,GAAG;;;;;;CAMhC,CAAA"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.d.ts","sourceRoot":"","sources":["../../src/core/mcp-server.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,aAAa,EAAa,MAAM,aAAa,CAAA;AAwH3D,wBAAsB,cAAc,CAAC,MAAM,EAAE,aAAa,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAyBtF"}
|
package/dist/core/mcp-server.js
DELETED
|
@@ -1,264 +0,0 @@
|
|
|
1
|
-
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
2
|
-
import { StdioServerTransport } from '@modelcontextprotocol/sdk/server/stdio.js';
|
|
3
|
-
import { CallToolRequestSchema, ListToolsRequestSchema, } from '@modelcontextprotocol/sdk/types.js';
|
|
4
|
-
import { readdirSync, readFileSync, statSync } from 'node:fs';
|
|
5
|
-
import { join, resolve } from 'node:path';
|
|
6
|
-
import { openDB } from './db.js';
|
|
7
|
-
const VERSION = '0.1.0';
|
|
8
|
-
// ─── Tool schemas ─────────────────────────────────────────────────────────────
|
|
9
|
-
const TOOLS = [
|
|
10
|
-
{
|
|
11
|
-
name: 'actions.start',
|
|
12
|
-
description: 'Start a new action for a task. Returns an actionId (UUID).',
|
|
13
|
-
inputSchema: {
|
|
14
|
-
type: 'object',
|
|
15
|
-
properties: {
|
|
16
|
-
taskId: { type: 'number', description: 'The task ID from tasks.get' },
|
|
17
|
-
agent: {
|
|
18
|
-
type: 'string',
|
|
19
|
-
description: 'Agent name: lead | explorer | builder | reviewer | custom:<name>',
|
|
20
|
-
},
|
|
21
|
-
},
|
|
22
|
-
required: ['taskId', 'agent'],
|
|
23
|
-
},
|
|
24
|
-
},
|
|
25
|
-
{
|
|
26
|
-
name: 'actions.write',
|
|
27
|
-
description: 'Record a section in an action. Standard sections: result, tools_used, files_modified, blockers, next_steps.',
|
|
28
|
-
inputSchema: {
|
|
29
|
-
type: 'object',
|
|
30
|
-
properties: {
|
|
31
|
-
actionId: { type: 'string', description: 'UUID returned by actions.start' },
|
|
32
|
-
sectionType: {
|
|
33
|
-
type: 'string',
|
|
34
|
-
description: 'Section name: result | tools_used | files_modified | blockers | next_steps | <custom>',
|
|
35
|
-
},
|
|
36
|
-
content: { type: 'string', description: 'Content for this section' },
|
|
37
|
-
},
|
|
38
|
-
required: ['actionId', 'sectionType', 'content'],
|
|
39
|
-
},
|
|
40
|
-
},
|
|
41
|
-
{
|
|
42
|
-
name: 'actions.complete',
|
|
43
|
-
description: 'Close an action with a one-line summary.',
|
|
44
|
-
inputSchema: {
|
|
45
|
-
type: 'object',
|
|
46
|
-
properties: {
|
|
47
|
-
actionId: { type: 'string', description: 'UUID of the action to close' },
|
|
48
|
-
summary: { type: 'string', description: 'One-line summary of what was done' },
|
|
49
|
-
},
|
|
50
|
-
required: ['actionId', 'summary'],
|
|
51
|
-
},
|
|
52
|
-
},
|
|
53
|
-
{
|
|
54
|
-
name: 'actions.get',
|
|
55
|
-
description: 'Get the full action history for a task (all agents, all sections).',
|
|
56
|
-
inputSchema: {
|
|
57
|
-
type: 'object',
|
|
58
|
-
properties: {
|
|
59
|
-
taskId: { type: 'number', description: 'Task ID' },
|
|
60
|
-
},
|
|
61
|
-
required: ['taskId'],
|
|
62
|
-
},
|
|
63
|
-
},
|
|
64
|
-
{
|
|
65
|
-
name: 'tasks.get',
|
|
66
|
-
description: 'List tasks, optionally filtered by status.',
|
|
67
|
-
inputSchema: {
|
|
68
|
-
type: 'object',
|
|
69
|
-
properties: {
|
|
70
|
-
status: {
|
|
71
|
-
type: 'string',
|
|
72
|
-
enum: ['pending', 'in_progress', 'done', 'blocked'],
|
|
73
|
-
description: 'Filter by status (omit for all tasks)',
|
|
74
|
-
},
|
|
75
|
-
},
|
|
76
|
-
},
|
|
77
|
-
},
|
|
78
|
-
{
|
|
79
|
-
name: 'tasks.claim',
|
|
80
|
-
description: 'Atomically claim a pending task. Returns task_already_claimed if another agent got it first.',
|
|
81
|
-
inputSchema: {
|
|
82
|
-
type: 'object',
|
|
83
|
-
properties: {
|
|
84
|
-
id: { type: 'number', description: 'Task ID to claim' },
|
|
85
|
-
agent: { type: 'string', description: 'Your agent name' },
|
|
86
|
-
},
|
|
87
|
-
required: ['id', 'agent'],
|
|
88
|
-
},
|
|
89
|
-
},
|
|
90
|
-
{
|
|
91
|
-
name: 'tasks.update',
|
|
92
|
-
description: 'Change the status of a task.',
|
|
93
|
-
inputSchema: {
|
|
94
|
-
type: 'object',
|
|
95
|
-
properties: {
|
|
96
|
-
id: { type: 'number', description: 'Task ID' },
|
|
97
|
-
status: {
|
|
98
|
-
type: 'string',
|
|
99
|
-
enum: ['pending', 'in_progress', 'done', 'blocked'],
|
|
100
|
-
},
|
|
101
|
-
},
|
|
102
|
-
required: ['id', 'status'],
|
|
103
|
-
},
|
|
104
|
-
},
|
|
105
|
-
{
|
|
106
|
-
name: 'docs.search',
|
|
107
|
-
description: 'Search the project docs folder for content matching a query.',
|
|
108
|
-
inputSchema: {
|
|
109
|
-
type: 'object',
|
|
110
|
-
properties: {
|
|
111
|
-
query: { type: 'string', description: 'Search terms' },
|
|
112
|
-
},
|
|
113
|
-
required: ['query'],
|
|
114
|
-
},
|
|
115
|
-
},
|
|
116
|
-
];
|
|
117
|
-
// ─── Server ───────────────────────────────────────────────────────────────────
|
|
118
|
-
export async function startMcpServer(config, cwd) {
|
|
119
|
-
const db = openDB(config, cwd);
|
|
120
|
-
const docsPath = resolve(cwd, config.project.docsPath);
|
|
121
|
-
const server = new Server({ name: 'agent-harness-kit', version: VERSION }, { capabilities: { tools: {} } });
|
|
122
|
-
server.setRequestHandler(ListToolsRequestSchema, async () => ({ tools: TOOLS }));
|
|
123
|
-
server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
124
|
-
const { name, arguments: args } = request.params;
|
|
125
|
-
const a = (args ?? {});
|
|
126
|
-
try {
|
|
127
|
-
const result = await dispatch(name, a, db, docsPath);
|
|
128
|
-
return result;
|
|
129
|
-
}
|
|
130
|
-
catch (err) {
|
|
131
|
-
return ok(`Error: ${err instanceof Error ? err.message : String(err)}`, true);
|
|
132
|
-
}
|
|
133
|
-
});
|
|
134
|
-
const transport = new StdioServerTransport();
|
|
135
|
-
await server.connect(transport);
|
|
136
|
-
}
|
|
137
|
-
// ─── Dispatch ─────────────────────────────────────────────────────────────────
|
|
138
|
-
async function dispatch(name, args, db, docsPath) {
|
|
139
|
-
switch (name) {
|
|
140
|
-
case 'actions.start': {
|
|
141
|
-
const taskId = num(args, 'taskId');
|
|
142
|
-
const agent = str(args, 'agent');
|
|
143
|
-
const action = db.startAction(taskId, agent);
|
|
144
|
-
return ok(JSON.stringify({ actionId: action.id, taskId, agent, status: 'in_progress' }));
|
|
145
|
-
}
|
|
146
|
-
case 'actions.write': {
|
|
147
|
-
const actionId = str(args, 'actionId');
|
|
148
|
-
const sectionType = str(args, 'sectionType');
|
|
149
|
-
const content = str(args, 'content');
|
|
150
|
-
db.writeSection(actionId, sectionType, content);
|
|
151
|
-
return ok(JSON.stringify({ actionId, sectionType, recorded: true }));
|
|
152
|
-
}
|
|
153
|
-
case 'actions.complete': {
|
|
154
|
-
const actionId = str(args, 'actionId');
|
|
155
|
-
const summary = str(args, 'summary');
|
|
156
|
-
const action = db.completeAction(actionId, summary);
|
|
157
|
-
return ok(JSON.stringify({ actionId, status: action.status, completedAt: action.completed_at }));
|
|
158
|
-
}
|
|
159
|
-
case 'actions.get': {
|
|
160
|
-
const taskId = num(args, 'taskId');
|
|
161
|
-
const actions = db.getActionsForTask(taskId);
|
|
162
|
-
const full = actions.map((a) => ({
|
|
163
|
-
...a,
|
|
164
|
-
sections: db.getActionSections(a.id),
|
|
165
|
-
}));
|
|
166
|
-
return ok(JSON.stringify(full, null, 2));
|
|
167
|
-
}
|
|
168
|
-
case 'tasks.get': {
|
|
169
|
-
const status = args['status'];
|
|
170
|
-
const tasks = status
|
|
171
|
-
? db.getTasks(status)
|
|
172
|
-
: db.getTasks();
|
|
173
|
-
return ok(JSON.stringify(tasks, null, 2));
|
|
174
|
-
}
|
|
175
|
-
case 'tasks.claim': {
|
|
176
|
-
const id = num(args, 'id');
|
|
177
|
-
const agent = str(args, 'agent');
|
|
178
|
-
const task = db.claimTask(id, agent);
|
|
179
|
-
if (!task) {
|
|
180
|
-
return ok(JSON.stringify({ error: 'task_already_claimed', taskId: id }));
|
|
181
|
-
}
|
|
182
|
-
return ok(JSON.stringify(task));
|
|
183
|
-
}
|
|
184
|
-
case 'tasks.update': {
|
|
185
|
-
const id = num(args, 'id');
|
|
186
|
-
const status = str(args, 'status');
|
|
187
|
-
const task = db.updateTaskStatus(id, status);
|
|
188
|
-
return ok(JSON.stringify(task));
|
|
189
|
-
}
|
|
190
|
-
case 'docs.search': {
|
|
191
|
-
const query = str(args, 'query');
|
|
192
|
-
const results = searchDocs(docsPath, query);
|
|
193
|
-
return ok(JSON.stringify(results, null, 2));
|
|
194
|
-
}
|
|
195
|
-
default:
|
|
196
|
-
return ok(`Unknown tool: ${name}`, true);
|
|
197
|
-
}
|
|
198
|
-
}
|
|
199
|
-
function searchDocs(docsPath, query, maxResults = 10) {
|
|
200
|
-
const terms = query.toLowerCase().split(/\s+/).filter(Boolean);
|
|
201
|
-
const results = [];
|
|
202
|
-
try {
|
|
203
|
-
const files = collectMarkdownFiles(docsPath);
|
|
204
|
-
for (const file of files) {
|
|
205
|
-
if (results.length >= maxResults)
|
|
206
|
-
break;
|
|
207
|
-
try {
|
|
208
|
-
const content = readFileSync(file, 'utf8');
|
|
209
|
-
const lines = content.split('\n');
|
|
210
|
-
for (let i = 0; i < lines.length; i++) {
|
|
211
|
-
const lower = lines[i].toLowerCase();
|
|
212
|
-
if (terms.every((t) => lower.includes(t))) {
|
|
213
|
-
results.push({ file: file.replace(docsPath + '/', ''), line: i + 1, text: lines[i].trim() });
|
|
214
|
-
if (results.length >= maxResults)
|
|
215
|
-
break;
|
|
216
|
-
}
|
|
217
|
-
}
|
|
218
|
-
}
|
|
219
|
-
catch {
|
|
220
|
-
// skip unreadable files
|
|
221
|
-
}
|
|
222
|
-
}
|
|
223
|
-
}
|
|
224
|
-
catch {
|
|
225
|
-
return [{ file: '', line: 0, text: `docs path not found: ${docsPath}` }];
|
|
226
|
-
}
|
|
227
|
-
return results;
|
|
228
|
-
}
|
|
229
|
-
function collectMarkdownFiles(dir) {
|
|
230
|
-
const files = [];
|
|
231
|
-
try {
|
|
232
|
-
for (const entry of readdirSync(dir)) {
|
|
233
|
-
const full = join(dir, entry);
|
|
234
|
-
const stat = statSync(full);
|
|
235
|
-
if (stat.isDirectory()) {
|
|
236
|
-
files.push(...collectMarkdownFiles(full));
|
|
237
|
-
}
|
|
238
|
-
else if (entry.endsWith('.md') || entry.endsWith('.txt')) {
|
|
239
|
-
files.push(full);
|
|
240
|
-
}
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
catch {
|
|
244
|
-
// directory may not exist yet
|
|
245
|
-
}
|
|
246
|
-
return files;
|
|
247
|
-
}
|
|
248
|
-
// ─── Helpers ──────────────────────────────────────────────────────────────────
|
|
249
|
-
function ok(text, isError = false) {
|
|
250
|
-
return { content: [{ type: 'text', text }], isError };
|
|
251
|
-
}
|
|
252
|
-
function str(args, key) {
|
|
253
|
-
const v = args[key];
|
|
254
|
-
if (typeof v !== 'string')
|
|
255
|
-
throw new Error(`${key} must be a string`);
|
|
256
|
-
return v;
|
|
257
|
-
}
|
|
258
|
-
function num(args, key) {
|
|
259
|
-
const v = args[key];
|
|
260
|
-
if (typeof v !== 'number')
|
|
261
|
-
throw new Error(`${key} must be a number`);
|
|
262
|
-
return v;
|
|
263
|
-
}
|
|
264
|
-
//# sourceMappingURL=mcp-server.js.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"mcp-server.js","sourceRoot":"","sources":["../../src/core/mcp-server.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,67 +0,0 @@
|
|
|
1
|
-
export interface CountRow {
|
|
2
|
-
total: number;
|
|
3
|
-
}
|
|
4
|
-
export interface TaskListRow {
|
|
5
|
-
id: number;
|
|
6
|
-
slug: string;
|
|
7
|
-
title: string;
|
|
8
|
-
description: string | null;
|
|
9
|
-
status: string;
|
|
10
|
-
assigned_to: string | null;
|
|
11
|
-
created_at: string;
|
|
12
|
-
started_at: string | null;
|
|
13
|
-
completed_at: string | null;
|
|
14
|
-
acceptance_total: number;
|
|
15
|
-
acceptance_met: number;
|
|
16
|
-
}
|
|
17
|
-
export interface RecentToolRow {
|
|
18
|
-
id: number;
|
|
19
|
-
tool_name: string;
|
|
20
|
-
args_json: string | null;
|
|
21
|
-
result_summary: string | null;
|
|
22
|
-
called_at: string;
|
|
23
|
-
task_id: number;
|
|
24
|
-
task_title: string;
|
|
25
|
-
task_slug: string;
|
|
26
|
-
agent: string;
|
|
27
|
-
}
|
|
28
|
-
export interface TopFileRow {
|
|
29
|
-
file_path: string;
|
|
30
|
-
total: number;
|
|
31
|
-
read: number;
|
|
32
|
-
created: number;
|
|
33
|
-
modified: number;
|
|
34
|
-
deleted: number;
|
|
35
|
-
}
|
|
36
|
-
export interface RecentFileRow {
|
|
37
|
-
id: number;
|
|
38
|
-
file_path: string;
|
|
39
|
-
operation: string;
|
|
40
|
-
notes: string | null;
|
|
41
|
-
task_id: number;
|
|
42
|
-
task_title: string;
|
|
43
|
-
task_slug: string;
|
|
44
|
-
agent: string;
|
|
45
|
-
called_at: string;
|
|
46
|
-
}
|
|
47
|
-
export interface AgentStatRow {
|
|
48
|
-
agent: string;
|
|
49
|
-
actions_total: number;
|
|
50
|
-
actions_done: number;
|
|
51
|
-
actions_blocked: number;
|
|
52
|
-
tasks_worked: number;
|
|
53
|
-
files_touched: number;
|
|
54
|
-
}
|
|
55
|
-
export interface TimelineRow {
|
|
56
|
-
id: string;
|
|
57
|
-
agent: string;
|
|
58
|
-
status: string;
|
|
59
|
-
summary: string | null;
|
|
60
|
-
created_at: string;
|
|
61
|
-
completed_at: string | null;
|
|
62
|
-
task_id: number;
|
|
63
|
-
task_title: string;
|
|
64
|
-
task_slug: string;
|
|
65
|
-
task_status: string;
|
|
66
|
-
}
|
|
67
|
-
//# sourceMappingURL=server-types.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-types.d.ts","sourceRoot":"","sources":["../../src/core/server-types.ts"],"names":[],"mappings":"AAEA,MAAM,WAAW,QAAQ;IACvB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,KAAK,EAAE,MAAM,CAAA;IACb,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,MAAM,EAAE,MAAM,CAAA;IACd,WAAW,EAAE,MAAM,GAAG,IAAI,CAAA;IAC1B,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAA;IACzB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,gBAAgB,EAAE,MAAM,CAAA;IACxB,cAAc,EAAE,MAAM,CAAA;CACvB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;IACxB,cAAc,EAAE,MAAM,GAAG,IAAI,CAAA;IAC7B,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;CACd;AAED,MAAM,WAAW,UAAU;IACzB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,QAAQ,EAAE,MAAM,CAAA;IAChB,OAAO,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,aAAa;IAC5B,EAAE,EAAE,MAAM,CAAA;IACV,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAA;IACpB,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,KAAK,EAAE,MAAM,CAAA;IACb,SAAS,EAAE,MAAM,CAAA;CAClB;AAED,MAAM,WAAW,YAAY;IAC3B,KAAK,EAAE,MAAM,CAAA;IACb,aAAa,EAAE,MAAM,CAAA;IACrB,YAAY,EAAE,MAAM,CAAA;IACpB,eAAe,EAAE,MAAM,CAAA;IACvB,YAAY,EAAE,MAAM,CAAA;IACpB,aAAa,EAAE,MAAM,CAAA;CACtB;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,GAAG,IAAI,CAAA;IACtB,UAAU,EAAE,MAAM,CAAA;IAClB,YAAY,EAAE,MAAM,GAAG,IAAI,CAAA;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,UAAU,EAAE,MAAM,CAAA;IAClB,SAAS,EAAE,MAAM,CAAA;IACjB,WAAW,EAAE,MAAM,CAAA;CACpB"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"server-types.js","sourceRoot":"","sources":["../../src/core/server-types.ts"],"names":[],"mappings":"AAAA,0DAA0D"}
|
|
@@ -1,14 +0,0 @@
|
|
|
1
|
-
export type SQLRow = Record<string, unknown>;
|
|
2
|
-
export interface SQLStatement {
|
|
3
|
-
run(...args: unknown[]): unknown;
|
|
4
|
-
get(...args: unknown[]): SQLRow | undefined;
|
|
5
|
-
all(...args: unknown[]): SQLRow[];
|
|
6
|
-
}
|
|
7
|
-
export interface SQLiteDB {
|
|
8
|
-
exec(sql: string): void;
|
|
9
|
-
prepare(sql: string): SQLStatement;
|
|
10
|
-
close(): void;
|
|
11
|
-
}
|
|
12
|
-
export declare function openSQLite(path: string): SQLiteDB;
|
|
13
|
-
export declare function lastInsertId(db: SQLiteDB): number;
|
|
14
|
-
//# sourceMappingURL=sqlite-adapter.d.ts.map
|