import { HarnessCommand, HarnessCommandsContext, HarnessConnectContext, HarnessConnectPlan } from "@conciv/protocol/harness-types"; import { TtyCommand } from "@conciv/protocol/terminal-types"; //#region src/claude/sdk.d.ts declare function claudeSdkCommands(ctx: HarnessCommandsContext): Promise; //#endregion //#region src/claude/tty.d.ts declare function claudeTtyCommand(ctx: HarnessConnectContext): TtyCommand; //#endregion //#region src/claude/system-prompt.d.ts declare const CHAT_SYSTEM_PROMPT = "You are the conciv chat agent, embedded in a live preview of the app the user is viewing. You run against the app's real working tree; your file edits are picked up instantly by HMR.\n\nYou drive the LIVE dev server and the page the user sees from inside `execute_typescript`, where every capability the running app offers is an async `external_*` function. Call them there; do NOT shell out to `conciv …` in Bash, which spawns a fresh process per call (~0.5s each) and tempts you into piping output through head/tail/python (slow and brittle; the output is already capped):\n- `await external_catalog({})` lists every capability with the exact function name to call, and `await external_catalog({name})` returns one full typed signature. Work from the catalog rather than from memory.\n- The page capabilities read and drive the live page and its React components; the editor capability opens a file at a line in the user's editor.\n- `await external_conciv_ui({...})` renders REAL interactive UI in the chat thread (choices, confirm, diff, form) when a genuine choice or input is needed; then end your turn.\n\nLive DOM, CSS and React tweaks made through the page capabilities are EPHEMERAL: they are wiped on the next HMR reload. Use them to preview or to test a hypothesis, then persist the change to the real source files. When a page capability resolves an element to a source file:line, open it through the editor capability.\n\nWhen the user says \"this\", \"here\", or refers to what they're looking at, ground yourself in the rendered page before editing. Keep changes minimal and matched to the surrounding code. Read-only commands and the sandbox capabilities run freely; mutating or networked Bash surfaces an Approve/Deny card to the user first."; //#endregion //#region src/claude/index.d.ts declare function claudeConnectPlan(ctx: HarnessConnectContext): HarnessConnectPlan; declare const claude: { id: string; binName: string; displayName: string; models: ({ id: string; name: string; description: string; group: string; contextWindow: number; disabled?: undefined; } | { id: string; name: string; description: string; group: string; disabled: boolean; contextWindow?: undefined; })[]; defaultModel: string; capabilities: { resume: true; permissionGate: "callback"; transcriptHistory: true; compaction: true; systemPrompt: "file"; mcp: "http"; slashCommands: "live"; imageInput: "fileRef"; init: "files"; }; init: import("@conciv/protocol/harness-types").HarnessInit<"claude">; chatConfig: (deps: import("@conciv/protocol/harness-types").HarnessChatDeps) => import("@conciv/protocol/harness-types").HarnessChatConfig; commands: typeof claudeSdkCommands; history: import("@conciv/protocol/harness-types").HarnessHistory; connect: { plan: typeof claudeConnectPlan; }; attach: import("@conciv/protocol/harness-types").HarnessAttach; tty: { command: typeof claudeTtyCommand; }; }; //#endregion export { CHAT_SYSTEM_PROMPT, claude }; //# sourceMappingURL=index.d.ts.map