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/<name>.<ext>\", \"content\": \"<full source>\" }\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.<ext>\", \"content\": \"<full source>\" }\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/<name>\", \"content\": \"<full source>\" }\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/<name>.md\", \"content\": \"<full markdown>\" }\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;
