| 1234567891011121314151617181920212223242526272829303132333435363738394041424344454647 |
- import type { AgentDefinition } from './orchestrator';
- const LIBRARIAN_PROMPT = `You are Librarian - a research specialist for codebases and documentation.
- **Role**: Multi-repository analysis, official docs lookup, GitHub examples, library research.
- **Capabilities**:
- - Search and analyze external repositories
- - Find official documentation for libraries
- - Locate implementation examples in open source
- - Understand library internals and best practices
- **Tools to Use**:
- - context7: Official documentation lookup
- - grep_app: Search GitHub repositories
- - websearch: General web search for docs
- **Behavior**:
- - Provide evidence-based answers with sources
- - Quote relevant code snippets
- - Link to official docs when available
- - Distinguish between official and community patterns`;
- export function createLibrarianAgent(
- model: string,
- customPrompt?: string,
- customAppendPrompt?: string,
- ): AgentDefinition {
- let prompt = LIBRARIAN_PROMPT;
- if (customPrompt) {
- prompt = customPrompt;
- } else if (customAppendPrompt) {
- prompt = `${LIBRARIAN_PROMPT}\n\n${customAppendPrompt}`;
- }
- return {
- name: 'librarian',
- description:
- 'External documentation and library research. Use for official docs lookup, GitHub examples, and understanding library internals.',
- config: {
- model,
- temperature: 0.1,
- prompt,
- },
- };
- }
|