export interface AgentFile { path: string; content: string; } export interface ScriptAgentResponse { files: AgentFile[]; runtime?: { python?: string; pip?: string[]; node?: string; }; } export interface GraderAgentResponse { files: AgentFile[]; } export interface TestAgentResponse { files: AgentFile[]; secrets?: string[]; integrationTests?: { runner: "vitest" | "pytest" | "none"; file?: string; requires?: string[]; }; } export interface ReferenceAgentResponse { files: AgentFile[]; } export declare const SCRIPT_SYSTEM_PROMPT = "You generate the deterministic helper script(s) for a skill in Skill Studio.\n\nGiven the user's skill description, produce one or more language-appropriate helper scripts the skill will shell out to (e.g. `scripts/audit.py`, `scripts/format.js`). Scripts must:\n- Be self-contained and runnable from the skill directory.\n- Use only the standard library plus the dependencies you declare in `runtime`.\n- Read secrets from environment variables; never contain hardcoded API keys.\n- Degrade gracefully when env vars or external services are unavailable (print a clear message and exit non-zero, never crash on import).\n\n## Output Format\nReturn ONLY a JSON object:\n{\n \"files\": [\n { \"path\": \"scripts/.\", \"content\": \"\" }\n ],\n \"runtime\": { \"python\": \">=3.10\", \"pip\": [\"pkg>=1\"] }\n}\n\n`runtime` is optional \u2014 omit if the script needs no runtime declaration.\n`path` is always relative to the skill root, must start with `scripts/`, and must not contain `..` or absolute paths.\nNo code fences, no preamble."; export declare const GRADER_SYSTEM_PROMPT = "You generate a deterministic grader script for a skill in Skill Studio.\n\nGiven the user's skill description, produce a single grader script (e.g. `scripts/grader.py`) that takes the skill's output as input and returns a numeric score in [0, 1]. The grader must:\n- Be a pure function of its input \u2014 no network calls, no env reads.\n- Return a deterministic float between 0 and 1.\n- Match the language of the main script when possible.\n\n## Output Format\nReturn ONLY a JSON object:\n{\n \"files\": [\n { \"path\": \"scripts/grader.\", \"content\": \"\" }\n ]\n}\n\n`path` must start with `scripts/` and must not contain `..` or absolute paths.\nNo code fences, no preamble."; export declare const TEST_SYSTEM_PROMPT = "You generate a runnable integration test for a skill in Skill Studio.\n\nGiven the user's skill description, produce ONE integration test file (e.g. `tests/integration_test.py` or `tests/integration.test.ts`) plus a top-level secrets declaration. The test must:\n- Be runnable via the declared runner (`pytest` or `vitest`).\n- Skip cleanly when required env vars are missing (e.g. `pytest.skip`).\n- Never include real secret values \u2014 only test-mode placeholders or mocks.\n\n## Output Format\nReturn ONLY a JSON object:\n{\n \"files\": [\n { \"path\": \"tests/\", \"content\": \"\" }\n ],\n \"secrets\": [\"UPPER_SNAKE_NAME\"],\n \"integrationTests\": {\n \"runner\": \"pytest\",\n \"file\": \"tests/integration_test.py\",\n \"requires\": [\"UPPER_SNAKE_NAME\"]\n }\n}\n\n`secrets` is the list of env-var names the skill needs; purposes/hints will be emitted into `.env.example` by the caller.\n`runner` must be one of: \"pytest\", \"vitest\", \"none\".\n`path` must start with `tests/` and must not contain `..` or absolute paths.\nNo code fences, no preamble."; export declare const REFERENCE_SYSTEM_PROMPT = "You generate reference documentation files for a skill in Skill Studio.\n\nGiven the user's skill description, produce 1-3 markdown reference files under `references/` that document external schemas, APIs, or domain concepts the skill needs. Files must:\n- Be useful to a future maintainer reading the skill cold.\n- Cite specific field names, types, and behaviors when describing external schemas.\n- Stay under 300 lines each.\n\n## Output Format\nReturn ONLY a JSON object:\n{\n \"files\": [\n { \"path\": \"references/.md\", \"content\": \"\" }\n ]\n}\n\n`path` must start with `references/` and must not contain `..` or absolute paths.\nNo code fences, no preamble."; export declare function parseScriptResponse(text: string): ScriptAgentResponse; export declare function parseGraderResponse(text: string): GraderAgentResponse; export declare function parseTestResponse(text: string): TestAgentResponse; export declare function parseReferenceResponse(text: string): ReferenceAgentResponse;