Go to file
2026-04-07 17:07:35 -04:00
src Add complete Alfred Agent source — multi-provider AI runtime with 14 tools 2026-04-07 16:09:56 -04:00
CONTRIBUTING.md Add CONTRIBUTING.md 2026-04-07 17:07:35 -04:00
package.json Add complete Alfred Agent source — multi-provider AI runtime with 14 tools 2026-04-07 16:09:41 -04:00
README.md README: enhanced with line counts, design decisions, full source file table 2026-04-07 16:58:45 -04:00

Alfred Agent

Autonomous AI agent runtime — 1,870 lines, 8 source files, 14 tools, multi-provider.

The standalone agent that powers AI capabilities across Alfred Linux and Alfred IDE. Handles tool-calling loops, multi-provider LLM routing, session persistence, and a 7-section system prompt. Runs as a PM2 service or interactive CLI.

Architecture

  • Multi-provider: Anthropic Claude, OpenAI GPT, Groq (via OpenAI-compatible adapter)
  • 14 built-in tools: File I/O, web search, shell execution, code analysis, workflow hooks
  • Session persistence: Full conversation history stored to disk as JSON
  • 7-section system prompt: Identity, capabilities, tool descriptions, safety guardrails, context, reasoning, output formatting
  • Core loop: Autonomous tool-calling with reasoning → action → observation cycle

Source Files (1,870 lines total)

File Lines Purpose
src/tools.js 542 14 tool definitions — file read/write, search, shell exec, code analysis
src/hooks.js 334 Lifecycle hooks — pre/post tool execution, response filtering
src/cli.js 205 Interactive CLI with streaming output
src/agent.js 196 Core agent loop — tool calling, reasoning, response synthesis
src/prompt.js 174 7-section system prompt builder
src/index.js 156 HTTP server (port 3102), health check, message endpoints
src/session.js 141 Session manager with disk persistence
src/providers.js 122 LLM provider abstraction (Anthropic, OpenAI, Groq adapters)

Running

# CLI mode
OPENAI_API_KEY=... node src/cli.js --provider openai --model gpt-4o-mini -m "hello"

# Server mode (PM2)
pm2 start src/index.js --name alfred-agent
# Health: curl http://127.0.0.1:3102/health

Design Decisions

  • No framework: Pure Node.js, no Express, no LangChain, no abstractions-for-abstractions
  • Provider-agnostic: Same agent loop works with any OpenAI-compatible API
  • Stateful sessions: Every conversation persists to data/sessions/ — no lost context
  • Tool-first: Agent reasons about WHAT to do, tools handle HOW

License

AGPL-3.0 — GoSiteMe Inc.