Move the agent-spine bundle and the stdio/ACP/JSON-RPC app packages out of core/ and ui/ into a new packages/examples/ group, renamed with a -demo suffix so the npm name marks them as non-product surface: core/agent-core -> examples/agent-spine-demo (dsh-agent-spine-demo) ui/stdio-agent -> examples/stdio-demo (dsh-stdio-demo) ui/acp-agent -> examples/acp-demo (dsh-acp-demo) ui/jsonrpc-agent -> examples/jsonrpc-demo (dsh-jsonrpc-demo) Update every code/config/test reference and reference-only doc mentions, and regenerate module-graph, config-catalog, and doc-graphs. The jsonrpc bin (dsh-jsonrpc-agent) and single-file exe (dsh-jsonrpc-agent-pkg) keep their names; the SDK runtime-startup surface is reconciled separately.
25 lines
1.1 KiB
JavaScript
25 lines
1.1 KiB
JavaScript
/**
|
|
* Boot the REPL or ACP Code Mode overlay, defaulting to REPL. Each overlay
|
|
* includes its base example, selects Code Mode, and adds the worker runtime.
|
|
* Both require a DeepSeek API key; unsupported arguments fail with usage.
|
|
*/
|
|
import { spawn } from 'node:child_process'
|
|
|
|
// Each UI's node invocation, verbatim what its base demo script runs plus
|
|
// the overlay config (the stdio bin keeps --expose-internals for the cordis
|
|
// Loader's HMR path).
|
|
const UIS = new Map([
|
|
['repl', ['--expose-internals', '--import', 'tsx', 'packages/examples/stdio-demo/src/bin.ts', 'examples/coding-agent/code-mode.cordis.yml']],
|
|
['acp', ['--import', 'tsx', 'packages/examples/acp-demo/src/bin.ts', '--config', 'examples/acp-agent/code-mode.cordis.yml']],
|
|
])
|
|
|
|
const ui = process.argv[2] ?? 'repl'
|
|
const args = UIS.get(ui)
|
|
if (!args || process.argv.length > 3) {
|
|
console.error('usage: pnpm run demo:code-mode [repl|acp]')
|
|
process.exit(2)
|
|
}
|
|
|
|
const child = spawn(process.execPath, args, { stdio: 'inherit' })
|
|
child.on('exit', (code, signal) => { process.exit(signal !== null ? 1 : code ?? 1) })
|