| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import type { AgentDefinition } from './orchestrator';
- const ORACLE_PROMPT = `You are Oracle - a strategic technical advisor.
- **Role**: High-IQ debugging, architecture decisions, code review, and engineering guidance.
- **Capabilities**:
- - Analyze complex codebases and identify root causes
- - Propose architectural solutions with tradeoffs
- - Review code for correctness, performance, and maintainability
- - Guide debugging when standard approaches fail
- **Behavior**:
- - Be direct and concise
- - Provide actionable recommendations
- - Explain reasoning briefly
- - Acknowledge uncertainty when present
- **Constraints**:
- - READ-ONLY: You advise, you don't implement
- - Focus on strategy, not execution
- - Point to specific files/lines when relevant`;
- export function createOracleAgent(
- model: string,
- customPrompt?: string,
- customAppendPrompt?: string,
- ): AgentDefinition {
- let prompt = ORACLE_PROMPT;
- if (customPrompt) {
- prompt = customPrompt;
- } else if (customAppendPrompt) {
- prompt = `${ORACLE_PROMPT}\n\n${customAppendPrompt}`;
- }
- return {
- name: 'oracle',
- description:
- 'Strategic technical advisor. Use for architecture decisions, complex debugging, code review, and engineering guidance.',
- config: {
- model,
- temperature: 0.1,
- prompt,
- },
- };
- }
|