@beacon-build/sdk 1.15.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 +36 -0
- package/LICENSE +21 -0
- package/dist/cli/backlog.d.ts +14 -0
- package/dist/cli/backlog.d.ts.map +1 -0
- package/dist/cli/backlog.js +228 -0
- package/dist/cli/backlog.js.map +1 -0
- package/dist/cli/claude-md-check.d.ts +18 -0
- package/dist/cli/claude-md-check.d.ts.map +1 -0
- package/dist/cli/claude-md-check.js +57 -0
- package/dist/cli/claude-md-check.js.map +1 -0
- package/dist/cli/context.d.ts +14 -0
- package/dist/cli/context.d.ts.map +1 -0
- package/dist/cli/context.js +465 -0
- package/dist/cli/context.js.map +1 -0
- package/dist/cli/help.d.ts +17 -0
- package/dist/cli/help.d.ts.map +1 -0
- package/dist/cli/help.js +71 -0
- package/dist/cli/help.js.map +1 -0
- package/dist/cli/index.d.ts +22 -0
- package/dist/cli/index.d.ts.map +1 -0
- package/dist/cli/index.js +212 -0
- package/dist/cli/index.js.map +1 -0
- package/dist/cli/project-log.d.ts +16 -0
- package/dist/cli/project-log.d.ts.map +1 -0
- package/dist/cli/project-log.js +185 -0
- package/dist/cli/project-log.js.map +1 -0
- package/dist/cli/setup-worktree.d.ts +23 -0
- package/dist/cli/setup-worktree.d.ts.map +1 -0
- package/dist/cli/setup-worktree.js +396 -0
- package/dist/cli/setup-worktree.js.map +1 -0
- package/dist/cli/update-client.d.ts +14 -0
- package/dist/cli/update-client.d.ts.map +1 -0
- package/dist/cli/update-client.js +629 -0
- package/dist/cli/update-client.js.map +1 -0
- package/dist/cli/workflow-sync.d.ts +19 -0
- package/dist/cli/workflow-sync.d.ts.map +1 -0
- package/dist/cli/workflow-sync.js +133 -0
- package/dist/cli/workflow-sync.js.map +1 -0
- package/dist/clients/admin/agents.client.d.ts +38 -0
- package/dist/clients/admin/agents.client.d.ts.map +1 -0
- package/dist/clients/admin/agents.client.js +90 -0
- package/dist/clients/admin/agents.client.js.map +1 -0
- package/dist/clients/admin/alerts.client.d.ts +8 -0
- package/dist/clients/admin/alerts.client.d.ts.map +1 -0
- package/dist/clients/admin/alerts.client.js +11 -0
- package/dist/clients/admin/alerts.client.js.map +1 -0
- package/dist/clients/admin/assets.client.d.ts +19 -0
- package/dist/clients/admin/assets.client.d.ts.map +1 -0
- package/dist/clients/admin/assets.client.js +27 -0
- package/dist/clients/admin/assets.client.js.map +1 -0
- package/dist/clients/admin/board-messages.client.d.ts +13 -0
- package/dist/clients/admin/board-messages.client.d.ts.map +1 -0
- package/dist/clients/admin/board-messages.client.js +16 -0
- package/dist/clients/admin/board-messages.client.js.map +1 -0
- package/dist/clients/admin/conversation-messages.client.d.ts +11 -0
- package/dist/clients/admin/conversation-messages.client.d.ts.map +1 -0
- package/dist/clients/admin/conversation-messages.client.js +27 -0
- package/dist/clients/admin/conversation-messages.client.js.map +1 -0
- package/dist/clients/admin/db.client.d.ts +12 -0
- package/dist/clients/admin/db.client.d.ts.map +1 -0
- package/dist/clients/admin/db.client.js +13 -0
- package/dist/clients/admin/db.client.js.map +1 -0
- package/dist/clients/admin/documents.client.d.ts +23 -0
- package/dist/clients/admin/documents.client.d.ts.map +1 -0
- package/dist/clients/admin/documents.client.js +33 -0
- package/dist/clients/admin/documents.client.js.map +1 -0
- package/dist/clients/admin/github-proxy.client.d.ts +12 -0
- package/dist/clients/admin/github-proxy.client.d.ts.map +1 -0
- package/dist/clients/admin/github-proxy.client.js +10 -0
- package/dist/clients/admin/github-proxy.client.js.map +1 -0
- package/dist/clients/admin/memories.client.d.ts +25 -0
- package/dist/clients/admin/memories.client.d.ts.map +1 -0
- package/dist/clients/admin/memories.client.js +67 -0
- package/dist/clients/admin/memories.client.js.map +1 -0
- package/dist/clients/admin/organizations.client.d.ts +25 -0
- package/dist/clients/admin/organizations.client.d.ts.map +1 -0
- package/dist/clients/admin/organizations.client.js +33 -0
- package/dist/clients/admin/organizations.client.js.map +1 -0
- package/dist/clients/admin/planning.client.d.ts +16 -0
- package/dist/clients/admin/planning.client.d.ts.map +1 -0
- package/dist/clients/admin/planning.client.js +24 -0
- package/dist/clients/admin/planning.client.js.map +1 -0
- package/dist/clients/admin/projects.client.d.ts +10 -0
- package/dist/clients/admin/projects.client.d.ts.map +1 -0
- package/dist/clients/admin/projects.client.js +21 -0
- package/dist/clients/admin/projects.client.js.map +1 -0
- package/dist/clients/admin/sessions.client.d.ts +23 -0
- package/dist/clients/admin/sessions.client.d.ts.map +1 -0
- package/dist/clients/admin/sessions.client.js +53 -0
- package/dist/clients/admin/sessions.client.js.map +1 -0
- package/dist/clients/admin/tasks.client.d.ts +21 -0
- package/dist/clients/admin/tasks.client.d.ts.map +1 -0
- package/dist/clients/admin/tasks.client.js +44 -0
- package/dist/clients/admin/tasks.client.js.map +1 -0
- package/dist/clients/admin/tool-calls.client.d.ts +12 -0
- package/dist/clients/admin/tool-calls.client.d.ts.map +1 -0
- package/dist/clients/admin/tool-calls.client.js +29 -0
- package/dist/clients/admin/tool-calls.client.js.map +1 -0
- package/dist/clients/admin/usage.client.d.ts +23 -0
- package/dist/clients/admin/usage.client.d.ts.map +1 -0
- package/dist/clients/admin/usage.client.js +37 -0
- package/dist/clients/admin/usage.client.js.map +1 -0
- package/dist/clients/admin/users.client.d.ts +17 -0
- package/dist/clients/admin/users.client.d.ts.map +1 -0
- package/dist/clients/admin/users.client.js +24 -0
- package/dist/clients/admin/users.client.js.map +1 -0
- package/dist/clients/agent/messaging.client.d.ts +13 -0
- package/dist/clients/agent/messaging.client.d.ts.map +1 -0
- package/dist/clients/agent/messaging.client.js +37 -0
- package/dist/clients/agent/messaging.client.js.map +1 -0
- package/dist/clients/agent/tasks.client.d.ts +18 -0
- package/dist/clients/agent/tasks.client.d.ts.map +1 -0
- package/dist/clients/agent/tasks.client.js +68 -0
- package/dist/clients/agent/tasks.client.js.map +1 -0
- package/dist/clients/auth.client.d.ts +40 -0
- package/dist/clients/auth.client.d.ts.map +1 -0
- package/dist/clients/auth.client.js +78 -0
- package/dist/clients/auth.client.js.map +1 -0
- package/dist/clients/ops/agents-ops.client.d.ts +46 -0
- package/dist/clients/ops/agents-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/agents-ops.client.js +117 -0
- package/dist/clients/ops/agents-ops.client.js.map +1 -0
- package/dist/clients/ops/board-messages-ops.client.d.ts +14 -0
- package/dist/clients/ops/board-messages-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/board-messages-ops.client.js +26 -0
- package/dist/clients/ops/board-messages-ops.client.js.map +1 -0
- package/dist/clients/ops/conversation-messages-ops.client.d.ts +10 -0
- package/dist/clients/ops/conversation-messages-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/conversation-messages-ops.client.js +20 -0
- package/dist/clients/ops/conversation-messages-ops.client.js.map +1 -0
- package/dist/clients/ops/documents-ops.client.d.ts +20 -0
- package/dist/clients/ops/documents-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/documents-ops.client.js +31 -0
- package/dist/clients/ops/documents-ops.client.js.map +1 -0
- package/dist/clients/ops/memories-ops.client.d.ts +25 -0
- package/dist/clients/ops/memories-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/memories-ops.client.js +71 -0
- package/dist/clients/ops/memories-ops.client.js.map +1 -0
- package/dist/clients/ops/ops-db.client.d.ts +29 -0
- package/dist/clients/ops/ops-db.client.d.ts.map +1 -0
- package/dist/clients/ops/ops-db.client.js +35 -0
- package/dist/clients/ops/ops-db.client.js.map +1 -0
- package/dist/clients/ops/ops-logs.client.d.ts +22 -0
- package/dist/clients/ops/ops-logs.client.d.ts.map +1 -0
- package/dist/clients/ops/ops-logs.client.js +24 -0
- package/dist/clients/ops/ops-logs.client.js.map +1 -0
- package/dist/clients/ops/ops-mq.client.d.ts +19 -0
- package/dist/clients/ops/ops-mq.client.d.ts.map +1 -0
- package/dist/clients/ops/ops-mq.client.js +16 -0
- package/dist/clients/ops/ops-mq.client.js.map +1 -0
- package/dist/clients/ops/ops-northflank.client.d.ts +34 -0
- package/dist/clients/ops/ops-northflank.client.d.ts.map +1 -0
- package/dist/clients/ops/ops-northflank.client.js +42 -0
- package/dist/clients/ops/ops-northflank.client.js.map +1 -0
- package/dist/clients/ops/ops-storage.client.d.ts +34 -0
- package/dist/clients/ops/ops-storage.client.d.ts.map +1 -0
- package/dist/clients/ops/ops-storage.client.js +39 -0
- package/dist/clients/ops/ops-storage.client.js.map +1 -0
- package/dist/clients/ops/projects-ops.client.d.ts +20 -0
- package/dist/clients/ops/projects-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/projects-ops.client.js +18 -0
- package/dist/clients/ops/projects-ops.client.js.map +1 -0
- package/dist/clients/ops/realtime-ops.client.d.ts +14 -0
- package/dist/clients/ops/realtime-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/realtime-ops.client.js +10 -0
- package/dist/clients/ops/realtime-ops.client.js.map +1 -0
- package/dist/clients/ops/sessions-ops.client.d.ts +29 -0
- package/dist/clients/ops/sessions-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/sessions-ops.client.js +69 -0
- package/dist/clients/ops/sessions-ops.client.js.map +1 -0
- package/dist/clients/ops/tasks-ops.client.d.ts +18 -0
- package/dist/clients/ops/tasks-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/tasks-ops.client.js +37 -0
- package/dist/clients/ops/tasks-ops.client.js.map +1 -0
- package/dist/clients/ops/tool-calls-ops.client.d.ts +12 -0
- package/dist/clients/ops/tool-calls-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/tool-calls-ops.client.js +29 -0
- package/dist/clients/ops/tool-calls-ops.client.js.map +1 -0
- package/dist/clients/ops/usage-workflows-ops.client.d.ts +22 -0
- package/dist/clients/ops/usage-workflows-ops.client.d.ts.map +1 -0
- package/dist/clients/ops/usage-workflows-ops.client.js +23 -0
- package/dist/clients/ops/usage-workflows-ops.client.js.map +1 -0
- package/dist/factory/admin-sdk.d.ts +53 -0
- package/dist/factory/admin-sdk.d.ts.map +1 -0
- package/dist/factory/admin-sdk.js +59 -0
- package/dist/factory/admin-sdk.js.map +1 -0
- package/dist/factory/agent-sdk.d.ts +22 -0
- package/dist/factory/agent-sdk.d.ts.map +1 -0
- package/dist/factory/agent-sdk.js +22 -0
- package/dist/factory/agent-sdk.js.map +1 -0
- package/dist/factory/ops-sdk.d.ts +53 -0
- package/dist/factory/ops-sdk.d.ts.map +1 -0
- package/dist/factory/ops-sdk.js +56 -0
- package/dist/factory/ops-sdk.js.map +1 -0
- package/dist/index.d.ts +37 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +45 -0
- package/dist/index.js.map +1 -0
- package/dist/legacy/sdk-factory.d.ts +34 -0
- package/dist/legacy/sdk-factory.d.ts.map +1 -0
- package/dist/legacy/sdk-factory.js +34 -0
- package/dist/legacy/sdk-factory.js.map +1 -0
- package/dist/lib/context.d.ts +69 -0
- package/dist/lib/context.d.ts.map +1 -0
- package/dist/lib/context.js +225 -0
- package/dist/lib/context.js.map +1 -0
- package/dist/lib/db.d.ts +16 -0
- package/dist/lib/db.d.ts.map +1 -0
- package/dist/lib/db.js +50 -0
- package/dist/lib/db.js.map +1 -0
- package/dist/lib/logger.d.ts +14 -0
- package/dist/lib/logger.d.ts.map +1 -0
- package/dist/lib/logger.js +14 -0
- package/dist/lib/logger.js.map +1 -0
- package/dist/lib/opencode.d.ts +33 -0
- package/dist/lib/opencode.d.ts.map +1 -0
- package/dist/lib/opencode.js +101 -0
- package/dist/lib/opencode.js.map +1 -0
- package/dist/lib/utils.d.ts +18 -0
- package/dist/lib/utils.d.ts.map +1 -0
- package/dist/lib/utils.js +40 -0
- package/dist/lib/utils.js.map +1 -0
- package/dist/manifest.d.ts +26 -0
- package/dist/manifest.d.ts.map +1 -0
- package/dist/manifest.js +700 -0
- package/dist/manifest.js.map +1 -0
- package/dist/realtime/realtime.client.d.ts +76 -0
- package/dist/realtime/realtime.client.d.ts.map +1 -0
- package/dist/realtime/realtime.client.js +168 -0
- package/dist/realtime/realtime.client.js.map +1 -0
- package/dist/transport/binary-client.d.ts +23 -0
- package/dist/transport/binary-client.d.ts.map +1 -0
- package/dist/transport/binary-client.js +69 -0
- package/dist/transport/binary-client.js.map +1 -0
- package/dist/transport/errors.d.ts +14 -0
- package/dist/transport/errors.d.ts.map +1 -0
- package/dist/transport/errors.js +57 -0
- package/dist/transport/errors.js.map +1 -0
- package/dist/transport/http-client.d.ts +23 -0
- package/dist/transport/http-client.d.ts.map +1 -0
- package/dist/transport/http-client.js +88 -0
- package/dist/transport/http-client.js.map +1 -0
- package/dist/transport/multipart-client.d.ts +25 -0
- package/dist/transport/multipart-client.d.ts.map +1 -0
- package/dist/transport/multipart-client.js +87 -0
- package/dist/transport/multipart-client.js.map +1 -0
- package/dist/transport/ops-api-client.d.ts +39 -0
- package/dist/transport/ops-api-client.d.ts.map +1 -0
- package/dist/transport/ops-api-client.js +153 -0
- package/dist/transport/ops-api-client.js.map +1 -0
- package/dist/transport/sse-client.d.ts +33 -0
- package/dist/transport/sse-client.d.ts.map +1 -0
- package/dist/transport/sse-client.js +127 -0
- package/dist/transport/sse-client.js.map +1 -0
- package/package.json +32 -0
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* beacon-workflow-sync — @beacon-build/sdk (F85)
|
|
4
|
+
*
|
|
5
|
+
* Syncs workflow files from the filesystem into the documents table
|
|
6
|
+
* (type=workflow). Content-addressable: only updates documents whose
|
|
7
|
+
* diskHash has changed (INV-5). diskPath + diskHash are set exclusively
|
|
8
|
+
* by this script (INV-4).
|
|
9
|
+
*
|
|
10
|
+
* Usage:
|
|
11
|
+
* beacon-workflow-sync <project> --workflows-dir=<path> [--write] [--dry-run]
|
|
12
|
+
*
|
|
13
|
+
* Options:
|
|
14
|
+
* --workflows-dir=<path> Path to workflows/ directory (required)
|
|
15
|
+
* --write Write changes to DB (without this, --dry-run is assumed)
|
|
16
|
+
* --dry-run Show what would be synced without writing (default)
|
|
17
|
+
*/
|
|
18
|
+
export {};
|
|
19
|
+
//# sourceMappingURL=workflow-sync.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-sync.d.ts","sourceRoot":"","sources":["../../src/cli/workflow-sync.ts"],"names":[],"mappings":";AACA;;;;;;;;;;;;;;;GAeG"}
|
|
@@ -0,0 +1,133 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
/**
|
|
3
|
+
* beacon-workflow-sync — @beacon-build/sdk (F85)
|
|
4
|
+
*
|
|
5
|
+
* Syncs workflow files from the filesystem into the documents table
|
|
6
|
+
* (type=workflow). Content-addressable: only updates documents whose
|
|
7
|
+
* diskHash has changed (INV-5). diskPath + diskHash are set exclusively
|
|
8
|
+
* by this script (INV-4).
|
|
9
|
+
*
|
|
10
|
+
* Usage:
|
|
11
|
+
* beacon-workflow-sync <project> --workflows-dir=<path> [--write] [--dry-run]
|
|
12
|
+
*
|
|
13
|
+
* Options:
|
|
14
|
+
* --workflows-dir=<path> Path to workflows/ directory (required)
|
|
15
|
+
* --write Write changes to DB (without this, --dry-run is assumed)
|
|
16
|
+
* --dry-run Show what would be synced without writing (default)
|
|
17
|
+
*/
|
|
18
|
+
import { Pool } from 'pg';
|
|
19
|
+
import { createHash } from 'node:crypto';
|
|
20
|
+
import { readFileSync, readdirSync, statSync } from 'node:fs';
|
|
21
|
+
import { resolve, join, relative } from 'node:path';
|
|
22
|
+
import { getDatabaseUrl } from '../lib/db.js';
|
|
23
|
+
import { createCliLogger } from '../lib/logger.js';
|
|
24
|
+
const log = createCliLogger('workflow-sync');
|
|
25
|
+
// ── CLI ──────────────────────────────────────────────────────────────────────
|
|
26
|
+
const argv = process.argv.slice(2);
|
|
27
|
+
const positional = argv.filter((a) => !a.startsWith('-'));
|
|
28
|
+
const flags = argv.filter((a) => a.startsWith('-'));
|
|
29
|
+
const project = positional[0];
|
|
30
|
+
const workflowsDirFlag = flags.find((f) => f.startsWith('--workflows-dir='));
|
|
31
|
+
const doWrite = flags.includes('--write');
|
|
32
|
+
const isDryRun = flags.includes('--dry-run') || !doWrite;
|
|
33
|
+
if (!project || !workflowsDirFlag) {
|
|
34
|
+
log.error('missing required arguments', {
|
|
35
|
+
usage: 'beacon-cli workflow-sync <project> --workflows-dir=<path> [--write]',
|
|
36
|
+
});
|
|
37
|
+
process.exit(1);
|
|
38
|
+
}
|
|
39
|
+
const workflowsDirRaw = workflowsDirFlag.replace('--workflows-dir=', '');
|
|
40
|
+
const workflowsDir = resolve(process.cwd(), workflowsDirRaw);
|
|
41
|
+
// ── Collect workflow files ───────────────────────────────────────────────────
|
|
42
|
+
/**
|
|
43
|
+
* Recursively collect all .md files under dir, excluding _*.md (INV-3).
|
|
44
|
+
*/
|
|
45
|
+
function collectWorkflows(dir, baseDir) {
|
|
46
|
+
const results = [];
|
|
47
|
+
let entries;
|
|
48
|
+
try {
|
|
49
|
+
entries = readdirSync(dir);
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
log.error('cannot read directory', { dir });
|
|
53
|
+
process.exit(1);
|
|
54
|
+
}
|
|
55
|
+
for (const entry of entries) {
|
|
56
|
+
const fullPath = join(dir, entry);
|
|
57
|
+
const stat = statSync(fullPath);
|
|
58
|
+
if (stat.isDirectory()) {
|
|
59
|
+
results.push(...collectWorkflows(fullPath, baseDir));
|
|
60
|
+
}
|
|
61
|
+
else if (entry.endsWith('.md') && !entry.startsWith('_')) {
|
|
62
|
+
const relPath = relative(baseDir, fullPath);
|
|
63
|
+
const name = relPath.replace(/\.md$/, '');
|
|
64
|
+
const content = readFileSync(fullPath, 'utf-8');
|
|
65
|
+
results.push({ name, diskPath: fullPath, content });
|
|
66
|
+
}
|
|
67
|
+
}
|
|
68
|
+
return results;
|
|
69
|
+
}
|
|
70
|
+
// ── SHA-256 hash ─────────────────────────────────────────────────────────────
|
|
71
|
+
function sha256(content) {
|
|
72
|
+
return createHash('sha256').update(content, 'utf-8').digest('hex');
|
|
73
|
+
}
|
|
74
|
+
// ── Main ─────────────────────────────────────────────────────────────────────
|
|
75
|
+
async function main() {
|
|
76
|
+
const pool = new Pool({ connectionString: getDatabaseUrl() });
|
|
77
|
+
const workflows = collectWorkflows(workflowsDir, workflowsDir);
|
|
78
|
+
const total = workflows.length;
|
|
79
|
+
if (total === 0) {
|
|
80
|
+
log.info('sync complete', { synced: 0, skipped: 0, total: 0 });
|
|
81
|
+
await pool.end();
|
|
82
|
+
return;
|
|
83
|
+
}
|
|
84
|
+
let synced = 0;
|
|
85
|
+
let skipped = 0;
|
|
86
|
+
if (isDryRun) {
|
|
87
|
+
log.info('dry-run scan', { project, total });
|
|
88
|
+
}
|
|
89
|
+
for (const { name, diskPath, content } of workflows) {
|
|
90
|
+
const diskHash = sha256(content);
|
|
91
|
+
const { rows } = await pool.query(`SELECT id, disk_hash FROM documents
|
|
92
|
+
WHERE project = $1 AND type = 'workflow' AND name = $2 AND task_id IS NULL
|
|
93
|
+
LIMIT 1`, [project, name]);
|
|
94
|
+
const existing = rows[0];
|
|
95
|
+
if (existing && existing.disk_hash === diskHash) {
|
|
96
|
+
skipped++;
|
|
97
|
+
if (isDryRun) {
|
|
98
|
+
log.info('skip (unchanged)', { name });
|
|
99
|
+
}
|
|
100
|
+
continue;
|
|
101
|
+
}
|
|
102
|
+
if (isDryRun) {
|
|
103
|
+
const action = existing ? 'update' : 'insert';
|
|
104
|
+
log.info(action, { name });
|
|
105
|
+
synced++;
|
|
106
|
+
continue;
|
|
107
|
+
}
|
|
108
|
+
if (existing) {
|
|
109
|
+
await pool.query(`UPDATE documents
|
|
110
|
+
SET content = $1, disk_path = $2, disk_hash = $3, updated_at = NOW()
|
|
111
|
+
WHERE id = $4`, [content, diskPath, diskHash, existing.id]);
|
|
112
|
+
}
|
|
113
|
+
else {
|
|
114
|
+
await pool.query(`INSERT INTO documents (project, type, name, content, status, disk_path, disk_hash, updated_at)
|
|
115
|
+
VALUES ($1, 'workflow', $2, $3, 'active', $4, $5, NOW())`, [project, name, content, diskPath, diskHash]);
|
|
116
|
+
}
|
|
117
|
+
synced++;
|
|
118
|
+
}
|
|
119
|
+
await pool.end();
|
|
120
|
+
if (isDryRun) {
|
|
121
|
+
log.info('dry-run complete', { wouldSync: synced, skipped, total });
|
|
122
|
+
console.log(`[dry-run] ${synced} would be synced, ${skipped} skipped (unchanged), ${total} total`);
|
|
123
|
+
}
|
|
124
|
+
else {
|
|
125
|
+
log.info('sync complete', { synced, skipped, total });
|
|
126
|
+
console.log(`${synced} synced, ${skipped} skipped (unchanged), ${total} total`);
|
|
127
|
+
}
|
|
128
|
+
}
|
|
129
|
+
main().catch((err) => {
|
|
130
|
+
log.error('unexpected error', { error: err.message });
|
|
131
|
+
process.exit(1);
|
|
132
|
+
});
|
|
133
|
+
//# sourceMappingURL=workflow-sync.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"workflow-sync.js","sourceRoot":"","sources":["../../src/cli/workflow-sync.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,38 @@
|
|
|
1
|
+
import type { AgentDto, AgentSummaryDto, AgentSessionDto, TaskDto } from '@beacon-build/core';
|
|
2
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
3
|
+
export interface AgentDetailDto extends AgentDto {
|
|
4
|
+
sessions: AgentSessionDto[];
|
|
5
|
+
sessionCount: number;
|
|
6
|
+
tasks: TaskDto[];
|
|
7
|
+
}
|
|
8
|
+
export interface AgentIdentityFields {
|
|
9
|
+
character?: string;
|
|
10
|
+
instructions?: string;
|
|
11
|
+
roles?: string[];
|
|
12
|
+
defaultModel?: string;
|
|
13
|
+
}
|
|
14
|
+
export interface AffinityResult {
|
|
15
|
+
agentId: string;
|
|
16
|
+
alias: string;
|
|
17
|
+
method: string;
|
|
18
|
+
}
|
|
19
|
+
export declare class AdminAgentsClient {
|
|
20
|
+
private readonly http;
|
|
21
|
+
constructor(http: HttpClient);
|
|
22
|
+
list(project?: string): Promise<AgentDto[]>;
|
|
23
|
+
get(agentId: string): Promise<AgentDetailDto | null>;
|
|
24
|
+
byAlias(alias: string, project?: string): Promise<AgentSummaryDto | null>;
|
|
25
|
+
listActive(): Promise<AgentSummaryDto[]>;
|
|
26
|
+
create(alias: string, project: string): Promise<AgentSummaryDto>;
|
|
27
|
+
rename(agentId: string, alias: string): Promise<void>;
|
|
28
|
+
updateIdentity(agentId: string, fields: AgentIdentityFields): Promise<void>;
|
|
29
|
+
configSet(agentId: string, key: string, value: unknown): Promise<void>;
|
|
30
|
+
configGetAll(agentId: string): Promise<Record<string, unknown>>;
|
|
31
|
+
configDelete(agentId: string, key: string): Promise<void>;
|
|
32
|
+
resolveAffinity(project: string, cwd?: string): Promise<AffinityResult | null>;
|
|
33
|
+
issueToken(agentId: string, project: string): Promise<{
|
|
34
|
+
token: string;
|
|
35
|
+
expiresAt: string;
|
|
36
|
+
} | null>;
|
|
37
|
+
}
|
|
38
|
+
//# sourceMappingURL=agents.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/agents.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,eAAe,EAAE,eAAe,EAAE,OAAO,EAAE,MAAM,oBAAoB,CAAA;AAC7F,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE,MAAM,WAAW,cAAe,SAAQ,QAAQ;IAC5C,QAAQ,EAAE,eAAe,EAAE,CAAA;IAC3B,YAAY,EAAE,MAAM,CAAA;IACpB,KAAK,EAAE,OAAO,EAAE,CAAA;CACnB;AAED,MAAM,WAAW,mBAAmB;IAChC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,KAAK,CAAC,EAAE,MAAM,EAAE,CAAA;IAChB,YAAY,CAAC,EAAE,MAAM,CAAA;CACxB;AAED,MAAM,WAAW,cAAc;IAC3B,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,EAAE,MAAM,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;CACjB;AAED,qBAAa,iBAAiB;IACd,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEvC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAK3C,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAQpD,OAAO,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,GAAG,IAAI,CAAC;IAUzE,UAAU,IAAI,OAAO,CAAC,eAAe,EAAE,CAAC;IAQxC,MAAM,CAAC,KAAK,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC;IAIhE,MAAM,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIrD,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,MAAM,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC;IAI3E,SAAS,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAQtE,YAAY,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;IAU/D,YAAY,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAOzD,eAAe,CAAC,OAAO,EAAE,MAAM,EAAE,GAAG,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,cAAc,GAAG,IAAI,CAAC;IAW9E,UAAU,CACZ,OAAO,EAAE,MAAM,EACf,OAAO,EAAE,MAAM,GAChB,OAAO,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC;CAU1D"}
|
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
export class AdminAgentsClient {
|
|
2
|
+
http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.http = http;
|
|
5
|
+
}
|
|
6
|
+
async list(project) {
|
|
7
|
+
const qs = project ? `?project=${encodeURIComponent(project)}` : '';
|
|
8
|
+
return this.http.get(`/agents${qs}`);
|
|
9
|
+
}
|
|
10
|
+
async get(agentId) {
|
|
11
|
+
try {
|
|
12
|
+
return await this.http.get(`/agents/${encodeURIComponent(agentId)}`);
|
|
13
|
+
}
|
|
14
|
+
catch {
|
|
15
|
+
return null;
|
|
16
|
+
}
|
|
17
|
+
}
|
|
18
|
+
async byAlias(alias, project) {
|
|
19
|
+
const params = new URLSearchParams({ alias });
|
|
20
|
+
if (project)
|
|
21
|
+
params.set('project', project);
|
|
22
|
+
try {
|
|
23
|
+
return await this.http.get(`/agents/by-alias?${params.toString()}`);
|
|
24
|
+
}
|
|
25
|
+
catch {
|
|
26
|
+
return null;
|
|
27
|
+
}
|
|
28
|
+
}
|
|
29
|
+
async listActive() {
|
|
30
|
+
try {
|
|
31
|
+
return await this.http.get('/agents/active');
|
|
32
|
+
}
|
|
33
|
+
catch {
|
|
34
|
+
return [];
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
async create(alias, project) {
|
|
38
|
+
return this.http.post('/agents', { alias, project });
|
|
39
|
+
}
|
|
40
|
+
async rename(agentId, alias) {
|
|
41
|
+
await this.http.patch(`/agents/${encodeURIComponent(agentId)}`, { alias });
|
|
42
|
+
}
|
|
43
|
+
async updateIdentity(agentId, fields) {
|
|
44
|
+
await this.http.patch(`/agents/${encodeURIComponent(agentId)}/identity`, fields);
|
|
45
|
+
}
|
|
46
|
+
async configSet(agentId, key, value) {
|
|
47
|
+
await this.http.patch(`/agents/${encodeURIComponent(agentId)}/config`, {
|
|
48
|
+
action: 'set',
|
|
49
|
+
key,
|
|
50
|
+
value,
|
|
51
|
+
});
|
|
52
|
+
}
|
|
53
|
+
async configGetAll(agentId) {
|
|
54
|
+
try {
|
|
55
|
+
return await this.http.get(`/agents/${encodeURIComponent(agentId)}/config`);
|
|
56
|
+
}
|
|
57
|
+
catch {
|
|
58
|
+
return {};
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
async configDelete(agentId, key) {
|
|
62
|
+
await this.http.patch(`/agents/${encodeURIComponent(agentId)}/config`, {
|
|
63
|
+
action: 'delete',
|
|
64
|
+
key,
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
async resolveAffinity(project, cwd) {
|
|
68
|
+
try {
|
|
69
|
+
return await this.http.post('/agents/resolve-affinity', {
|
|
70
|
+
project,
|
|
71
|
+
cwd,
|
|
72
|
+
});
|
|
73
|
+
}
|
|
74
|
+
catch {
|
|
75
|
+
return null;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
async issueToken(agentId, project) {
|
|
79
|
+
try {
|
|
80
|
+
return await this.http.post('/agent-token', {
|
|
81
|
+
agentId,
|
|
82
|
+
project,
|
|
83
|
+
});
|
|
84
|
+
}
|
|
85
|
+
catch {
|
|
86
|
+
return null;
|
|
87
|
+
}
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=agents.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"agents.client.js","sourceRoot":"","sources":["../../../src/clients/admin/agents.client.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import type { EnrichedAlert } from '@beacon-build/core';
|
|
2
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
3
|
+
export declare class AdminAlertsClient {
|
|
4
|
+
private readonly http;
|
|
5
|
+
constructor(http: HttpClient);
|
|
6
|
+
list(project?: string): Promise<EnrichedAlert[]>;
|
|
7
|
+
}
|
|
8
|
+
//# sourceMappingURL=alerts.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alerts.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/alerts.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,oBAAoB,CAAA;AACvD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE,qBAAa,iBAAiB;IACd,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEvC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,aAAa,EAAE,CAAC;CAIzD"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
export class AdminAlertsClient {
|
|
2
|
+
http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.http = http;
|
|
5
|
+
}
|
|
6
|
+
async list(project) {
|
|
7
|
+
const qs = project ? `?project=${encodeURIComponent(project)}` : '';
|
|
8
|
+
return this.http.get(`/alerts${qs}`);
|
|
9
|
+
}
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=alerts.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"alerts.client.js","sourceRoot":"","sources":["../../../src/clients/admin/alerts.client.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,iBAAiB;IACG;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,KAAK,CAAC,IAAI,CAAC,OAAgB;QACvB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAkB,UAAU,EAAE,EAAE,CAAC,CAAA;IACzD,CAAC;CACJ"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { Asset } from '@beacon-build/core';
|
|
2
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
3
|
+
import type { MultipartClient } from '../../transport/multipart-client.js';
|
|
4
|
+
export interface UploadAssetInput {
|
|
5
|
+
file: Blob | File;
|
|
6
|
+
ownerType: string;
|
|
7
|
+
ownerId: string;
|
|
8
|
+
label?: string;
|
|
9
|
+
category?: string;
|
|
10
|
+
}
|
|
11
|
+
export declare class AdminAssetsClient {
|
|
12
|
+
private readonly http;
|
|
13
|
+
private readonly multipart;
|
|
14
|
+
constructor(http: HttpClient, multipart: MultipartClient);
|
|
15
|
+
list(ownerId?: string): Promise<Asset[]>;
|
|
16
|
+
upload(input: UploadAssetInput): Promise<Asset>;
|
|
17
|
+
delete(assetId: string): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=assets.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assets.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/assets.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,oBAAoB,CAAA;AAC/C,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAChE,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qCAAqC,CAAA;AAE1E,MAAM,WAAW,gBAAgB;IAC7B,IAAI,EAAE,IAAI,GAAG,IAAI,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,OAAO,EAAE,MAAM,CAAA;IACf,KAAK,CAAC,EAAE,MAAM,CAAA;IACd,QAAQ,CAAC,EAAE,MAAM,CAAA;CACpB;AAED,qBAAa,iBAAiB;IAEtB,OAAO,CAAC,QAAQ,CAAC,IAAI;IACrB,OAAO,CAAC,QAAQ,CAAC,SAAS;gBADT,IAAI,EAAE,UAAU,EAChB,SAAS,EAAE,eAAe;IAGzC,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,KAAK,EAAE,CAAC;IAKxC,MAAM,CAAC,KAAK,EAAE,gBAAgB,GAAG,OAAO,CAAC,KAAK,CAAC;IAY/C,MAAM,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG/C"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export class AdminAssetsClient {
|
|
2
|
+
http;
|
|
3
|
+
multipart;
|
|
4
|
+
constructor(http, multipart) {
|
|
5
|
+
this.http = http;
|
|
6
|
+
this.multipart = multipart;
|
|
7
|
+
}
|
|
8
|
+
async list(ownerId) {
|
|
9
|
+
const qs = ownerId ? `?ownerId=${encodeURIComponent(ownerId)}` : '';
|
|
10
|
+
return this.http.get(`/assets${qs}`);
|
|
11
|
+
}
|
|
12
|
+
async upload(input) {
|
|
13
|
+
return this.multipart.upload('/assets', {
|
|
14
|
+
file: input.file,
|
|
15
|
+
additionalFields: {
|
|
16
|
+
ownerType: input.ownerType,
|
|
17
|
+
ownerId: input.ownerId,
|
|
18
|
+
...(input.label ? { label: input.label } : {}),
|
|
19
|
+
...(input.category ? { category: input.category } : {}),
|
|
20
|
+
},
|
|
21
|
+
});
|
|
22
|
+
}
|
|
23
|
+
async delete(assetId) {
|
|
24
|
+
await this.http.delete(`/assets/${encodeURIComponent(assetId)}`);
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=assets.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"assets.client.js","sourceRoot":"","sources":["../../../src/clients/admin/assets.client.ts"],"names":[],"mappings":"AAYA,MAAM,OAAO,iBAAiB;IAEL;IACA;IAFrB,YACqB,IAAgB,EAChB,SAA0B;QAD1B,SAAI,GAAJ,IAAI,CAAY;QAChB,cAAS,GAAT,SAAS,CAAiB;IAC5C,CAAC;IAEJ,KAAK,CAAC,IAAI,CAAC,OAAgB;QACvB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAU,UAAU,EAAE,EAAE,CAAC,CAAA;IACjD,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAAuB;QAChC,OAAO,IAAI,CAAC,SAAS,CAAC,MAAM,CAAQ,SAAS,EAAE;YAC3C,IAAI,EAAE,KAAK,CAAC,IAAI;YAChB,gBAAgB,EAAE;gBACd,SAAS,EAAE,KAAK,CAAC,SAAS;gBAC1B,OAAO,EAAE,KAAK,CAAC,OAAO;gBACtB,GAAG,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,CAAC,KAAK,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBAC9C,GAAG,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,KAAK,CAAC,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAC1D;SACJ,CAAC,CAAA;IACN,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,OAAe;QACxB,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,WAAW,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAA;IACpE,CAAC;CACJ"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { BoardMessageDto } from '@beacon-build/core';
|
|
2
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
3
|
+
/**
|
|
4
|
+
* AdminBoardMessagesClient — read-only admin view of board messages.
|
|
5
|
+
* @deprecated Will be removed with F114 (board_* drop). Use thread-based messaging instead.
|
|
6
|
+
*/
|
|
7
|
+
export declare class AdminBoardMessagesClient {
|
|
8
|
+
private readonly http;
|
|
9
|
+
constructor(http: HttpClient);
|
|
10
|
+
/** @deprecated F114 will remove board messages */
|
|
11
|
+
list(project?: string): Promise<BoardMessageDto[]>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=board-messages.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-messages.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/board-messages.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAA;AACzD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE;;;GAGG;AACH,qBAAa,wBAAwB;IACrB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAE7C,kDAAkD;IAC5C,IAAI,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,EAAE,CAAC;CAI3D"}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* AdminBoardMessagesClient — read-only admin view of board messages.
|
|
3
|
+
* @deprecated Will be removed with F114 (board_* drop). Use thread-based messaging instead.
|
|
4
|
+
*/
|
|
5
|
+
export class AdminBoardMessagesClient {
|
|
6
|
+
http;
|
|
7
|
+
constructor(http) {
|
|
8
|
+
this.http = http;
|
|
9
|
+
}
|
|
10
|
+
/** @deprecated F114 will remove board messages */
|
|
11
|
+
async list(project) {
|
|
12
|
+
const qs = project ? `?project=${encodeURIComponent(project)}` : '';
|
|
13
|
+
return this.http.get(`/board-messages${qs}`);
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
//# sourceMappingURL=board-messages.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"board-messages.client.js","sourceRoot":"","sources":["../../../src/clients/admin/board-messages.client.ts"],"names":[],"mappings":"AAGA;;;GAGG;AACH,MAAM,OAAO,wBAAwB;IACJ;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,kDAAkD;IAClD,KAAK,CAAC,IAAI,CAAC,OAAgB;QACvB,MAAM,EAAE,GAAG,OAAO,CAAC,CAAC,CAAC,YAAY,kBAAkB,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAA;QACnE,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAoB,kBAAkB,EAAE,EAAE,CAAC,CAAA;IACnE,CAAC;CACJ"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { ConversationMessageDto, SessionMessagesDto } from '@beacon-build/core';
|
|
2
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
3
|
+
export declare class AdminConversationMessagesClient {
|
|
4
|
+
private readonly http;
|
|
5
|
+
constructor(http: HttpClient);
|
|
6
|
+
listBySession(sessionId: string): Promise<SessionMessagesDto>;
|
|
7
|
+
get(id: string): Promise<ConversationMessageDto | null>;
|
|
8
|
+
delete(id: string): Promise<void>;
|
|
9
|
+
updateTokens(id: string, inputTokens: number, outputTokens: number): Promise<void>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=conversation-messages.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-messages.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/conversation-messages.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,sBAAsB,EAAE,kBAAkB,EAAE,MAAM,oBAAoB,CAAA;AACpF,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE,qBAAa,+BAA+B;IAC5B,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEvC,aAAa,CAAC,SAAS,EAAE,MAAM,GAAG,OAAO,CAAC,kBAAkB,CAAC;IAM7D,GAAG,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,sBAAsB,GAAG,IAAI,CAAC;IAUvD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAIjC,YAAY,CAAC,EAAE,EAAE,MAAM,EAAE,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAM3F"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
export class AdminConversationMessagesClient {
|
|
2
|
+
http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.http = http;
|
|
5
|
+
}
|
|
6
|
+
async listBySession(sessionId) {
|
|
7
|
+
return this.http.get(`/conversation-messages?sessionId=${encodeURIComponent(sessionId)}`);
|
|
8
|
+
}
|
|
9
|
+
async get(id) {
|
|
10
|
+
try {
|
|
11
|
+
return await this.http.get(`/conversation-messages/${encodeURIComponent(id)}`);
|
|
12
|
+
}
|
|
13
|
+
catch {
|
|
14
|
+
return null;
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
async delete(id) {
|
|
18
|
+
await this.http.delete(`/conversation-messages/${encodeURIComponent(id)}`);
|
|
19
|
+
}
|
|
20
|
+
async updateTokens(id, inputTokens, outputTokens) {
|
|
21
|
+
await this.http.patch(`/conversation-messages/${encodeURIComponent(id)}/tokens`, {
|
|
22
|
+
inputTokens,
|
|
23
|
+
outputTokens,
|
|
24
|
+
});
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
//# sourceMappingURL=conversation-messages.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversation-messages.client.js","sourceRoot":"","sources":["../../../src/clients/admin/conversation-messages.client.ts"],"names":[],"mappings":"AAGA,MAAM,OAAO,+BAA+B;IACX;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,KAAK,CAAC,aAAa,CAAC,SAAiB;QACjC,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAChB,oCAAoC,kBAAkB,CAAC,SAAS,CAAC,EAAE,CACtE,CAAA;IACL,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,EAAU;QAChB,IAAI,CAAC;YACD,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CACtB,0BAA0B,kBAAkB,CAAC,EAAE,CAAC,EAAE,CACrD,CAAA;QACL,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAA;QACf,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACnB,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,0BAA0B,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAC9E,CAAC;IAED,KAAK,CAAC,YAAY,CAAC,EAAU,EAAE,WAAmB,EAAE,YAAoB;QACpE,MAAM,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,0BAA0B,kBAAkB,CAAC,EAAE,CAAC,SAAS,EAAE;YAC7E,WAAW;YACX,YAAY;SACf,CAAC,CAAA;IACN,CAAC;CACJ"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { TableCount, Migration } from '@beacon-build/core';
|
|
2
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
3
|
+
export interface DbStats {
|
|
4
|
+
tables: TableCount[];
|
|
5
|
+
}
|
|
6
|
+
export declare class AdminDbClient {
|
|
7
|
+
private readonly http;
|
|
8
|
+
constructor(http: HttpClient);
|
|
9
|
+
stats(): Promise<DbStats>;
|
|
10
|
+
migrations(): Promise<Migration[]>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=db.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"db.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/db.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,SAAS,EAAE,MAAM,oBAAoB,CAAA;AAC/D,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE,MAAM,WAAW,OAAO;IACpB,MAAM,EAAE,UAAU,EAAE,CAAA;CACvB;AAED,qBAAa,aAAa;IACV,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEvC,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC;IAIzB,UAAU,IAAI,OAAO,CAAC,SAAS,EAAE,CAAC;CAG3C"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export class AdminDbClient {
|
|
2
|
+
http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.http = http;
|
|
5
|
+
}
|
|
6
|
+
async stats() {
|
|
7
|
+
return this.http.get('/db/stats');
|
|
8
|
+
}
|
|
9
|
+
async migrations() {
|
|
10
|
+
return this.http.get('/db/migrations');
|
|
11
|
+
}
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=db.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"db.client.js","sourceRoot":"","sources":["../../../src/clients/admin/db.client.ts"],"names":[],"mappings":"AAOA,MAAM,OAAO,aAAa;IACO;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,KAAK,CAAC,KAAK;QACP,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAU,WAAW,CAAC,CAAA;IAC9C,CAAC;IAED,KAAK,CAAC,UAAU;QACZ,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAc,gBAAgB,CAAC,CAAA;IACvD,CAAC;CACJ"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import type { Document } from '@beacon-build/core';
|
|
2
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
3
|
+
export interface DocumentListFilter {
|
|
4
|
+
project?: string;
|
|
5
|
+
type?: string;
|
|
6
|
+
name?: string;
|
|
7
|
+
}
|
|
8
|
+
export interface UpsertDocumentInput {
|
|
9
|
+
project: string;
|
|
10
|
+
type: string;
|
|
11
|
+
name: string;
|
|
12
|
+
content: string;
|
|
13
|
+
taskId?: string;
|
|
14
|
+
}
|
|
15
|
+
export declare class AdminDocumentsClient {
|
|
16
|
+
private readonly http;
|
|
17
|
+
constructor(http: HttpClient);
|
|
18
|
+
list(filter?: DocumentListFilter): Promise<Document[]>;
|
|
19
|
+
get(project: string, type: string, name: string): Promise<Document | null>;
|
|
20
|
+
upsert(input: UpsertDocumentInput): Promise<Document>;
|
|
21
|
+
delete(id: string): Promise<void>;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=documents.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"documents.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/documents.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,oBAAoB,CAAA;AAClD,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE,MAAM,WAAW,kBAAkB;IAC/B,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,IAAI,CAAC,EAAE,MAAM,CAAA;IACb,IAAI,CAAC,EAAE,MAAM,CAAA;CAChB;AAED,MAAM,WAAW,mBAAmB;IAChC,OAAO,EAAE,MAAM,CAAA;IACf,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,EAAE,MAAM,CAAA;IACf,MAAM,CAAC,EAAE,MAAM,CAAA;CAClB;AAED,qBAAa,oBAAoB;IACjB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEvC,IAAI,CAAC,MAAM,GAAE,kBAAuB,GAAG,OAAO,CAAC,QAAQ,EAAE,CAAC;IAS1D,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,QAAQ,GAAG,IAAI,CAAC;IAS1E,MAAM,CAAC,KAAK,EAAE,mBAAmB,GAAG,OAAO,CAAC,QAAQ,CAAC;IAIrD,MAAM,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAG1C"}
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
export class AdminDocumentsClient {
|
|
2
|
+
http;
|
|
3
|
+
constructor(http) {
|
|
4
|
+
this.http = http;
|
|
5
|
+
}
|
|
6
|
+
async list(filter = {}) {
|
|
7
|
+
const params = new URLSearchParams();
|
|
8
|
+
if (filter.project)
|
|
9
|
+
params.set('project', filter.project);
|
|
10
|
+
if (filter.type)
|
|
11
|
+
params.set('type', filter.type);
|
|
12
|
+
if (filter.name)
|
|
13
|
+
params.set('name', filter.name);
|
|
14
|
+
const qs = params.toString();
|
|
15
|
+
return this.http.get(`/documents${qs ? `?${qs}` : ''}`);
|
|
16
|
+
}
|
|
17
|
+
async get(project, type, name) {
|
|
18
|
+
try {
|
|
19
|
+
const params = new URLSearchParams({ project, type, name });
|
|
20
|
+
return await this.http.get(`/documents/get?${params.toString()}`);
|
|
21
|
+
}
|
|
22
|
+
catch {
|
|
23
|
+
return null;
|
|
24
|
+
}
|
|
25
|
+
}
|
|
26
|
+
async upsert(input) {
|
|
27
|
+
return this.http.post('/documents/upsert', input);
|
|
28
|
+
}
|
|
29
|
+
async delete(id) {
|
|
30
|
+
await this.http.delete(`/documents/${encodeURIComponent(id)}`);
|
|
31
|
+
}
|
|
32
|
+
}
|
|
33
|
+
//# sourceMappingURL=documents.client.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"documents.client.js","sourceRoot":"","sources":["../../../src/clients/admin/documents.client.ts"],"names":[],"mappings":"AAiBA,MAAM,OAAO,oBAAoB;IACA;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,KAAK,CAAC,IAAI,CAAC,SAA6B,EAAE;QACtC,MAAM,MAAM,GAAG,IAAI,eAAe,EAAE,CAAA;QACpC,IAAI,MAAM,CAAC,OAAO;YAAE,MAAM,CAAC,GAAG,CAAC,SAAS,EAAE,MAAM,CAAC,OAAO,CAAC,CAAA;QACzD,IAAI,MAAM,CAAC,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAChD,IAAI,MAAM,CAAC,IAAI;YAAE,MAAM,CAAC,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,IAAI,CAAC,CAAA;QAChD,MAAM,EAAE,GAAG,MAAM,CAAC,QAAQ,EAAE,CAAA;QAC5B,OAAO,IAAI,CAAC,IAAI,CAAC,GAAG,CAAa,aAAa,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAA;IACvE,CAAC;IAED,KAAK,CAAC,GAAG,CAAC,OAAe,EAAE,IAAY,EAAE,IAAY;QACjD,IAAI,CAAC;YACD,MAAM,MAAM,GAAG,IAAI,eAAe,CAAC,EAAE,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;YAC3D,OAAO,MAAM,IAAI,CAAC,IAAI,CAAC,GAAG,CAAW,kBAAkB,MAAM,CAAC,QAAQ,EAAE,EAAE,CAAC,CAAA;QAC/E,CAAC;QAAC,MAAM,CAAC;YACL,OAAO,IAAI,CAAA;QACf,CAAC;IACL,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,KAA0B;QACnC,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAW,mBAAmB,EAAE,KAAK,CAAC,CAAA;IAC/D,CAAC;IAED,KAAK,CAAC,MAAM,CAAC,EAAU;QACnB,MAAM,IAAI,CAAC,IAAI,CAAC,MAAM,CAAC,cAAc,kBAAkB,CAAC,EAAE,CAAC,EAAE,CAAC,CAAA;IAClE,CAAC;CACJ"}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import type { HttpClient } from '../../transport/http-client.js';
|
|
2
|
+
export interface GithubProxyResponse {
|
|
3
|
+
data: unknown;
|
|
4
|
+
status: number;
|
|
5
|
+
headers: Record<string, string>;
|
|
6
|
+
}
|
|
7
|
+
export declare class AdminGithubProxyClient {
|
|
8
|
+
private readonly http;
|
|
9
|
+
constructor(http: HttpClient);
|
|
10
|
+
proxy(method: 'GET' | 'POST' | 'PATCH' | 'PUT' | 'DELETE', path: string, body?: unknown): Promise<GithubProxyResponse>;
|
|
11
|
+
}
|
|
12
|
+
//# sourceMappingURL=github-proxy.client.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"github-proxy.client.d.ts","sourceRoot":"","sources":["../../../src/clients/admin/github-proxy.client.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,gCAAgC,CAAA;AAEhE,MAAM,WAAW,mBAAmB;IAChC,IAAI,EAAE,OAAO,CAAA;IACb,MAAM,EAAE,MAAM,CAAA;IACd,OAAO,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,CAAA;CAClC;AAED,qBAAa,sBAAsB;IACnB,OAAO,CAAC,QAAQ,CAAC,IAAI;gBAAJ,IAAI,EAAE,UAAU;IAEvC,KAAK,CACP,MAAM,EAAE,KAAK,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,GAAG,QAAQ,EACnD,IAAI,EAAE,MAAM,EACZ,IAAI,CAAC,EAAE,OAAO,GACf,OAAO,CAAC,mBAAmB,CAAC;CAGlC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"github-proxy.client.js","sourceRoot":"","sources":["../../../src/clients/admin/github-proxy.client.ts"],"names":[],"mappings":"AAQA,MAAM,OAAO,sBAAsB;IACF;IAA7B,YAA6B,IAAgB;QAAhB,SAAI,GAAJ,IAAI,CAAY;IAAG,CAAC;IAEjD,KAAK,CAAC,KAAK,CACP,MAAmD,EACnD,IAAY,EACZ,IAAc;QAEd,OAAO,IAAI,CAAC,IAAI,CAAC,IAAI,CAAsB,eAAe,EAAE,EAAE,MAAM,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC,CAAA;IACvF,CAAC;CACJ"}
|