AiderDesk Documentation

repository·main·Indexed 23 days ago

https://github.com/hotovo/aider-desk

An open-source agentic orchestration platform for professional software engineers that acts as a transparent layer over AI models and the Aider CLI. AiderDesk provides advanced task management, Git worktree isolation, and extensibility via MCP and custom extensions. It includes a backend service installable via npm, an interactive TUI, a headless foreground mode, and a CLI for running prompts. Supported extensions include the Auggie SDK for LLM providers, a binary files tool for multimodal content, the BMAD Method for structured development workflows, and a Git-based Checkpoints extension.

Tokens
214.4K
Snippets
359
Records
983
Agent score
79%

What's inside AiderDesk

  1. Overview of Context Autocompletion Words Extension

    main

    The Context Autocompletion Words Extension enhances the autocompletion system by automatically extracting symbols from files currently in the context. It identifies function names, class names, variables, and constants, ensuring that the AI or developer has immediate access to relevant identifiers as they work.

    Key capabilities include:

    • Real-time updates: The autocompletion dictionary is updated automatically as files are added to or removed from the context.
    • Broad language support: Uses tree-sitter parsing to support over 18 programming languages.
    • Definition filtering: Automatically filters extracted symbols to include only definitions (kind='def'), such as functions, classes, methods, and variables.
  2. Overview of the AiderDesk Extension Interface

    main

    The AiderDesk extension interface is a TypeScript-based contract that allows developers to build custom tools and integrations. All methods within the interface are optional, meaning an extension only needs to implement the specific lifecycle hooks or event listeners it requires to function.

    For the most up-to-date type definitions, developers should refer to the authoritative source files in the repository:

    • packages/common/src/extensions.ts for the primary extension interface.
    • packages/common/src/types/context.ts for context message types.
    • packages/common/src/types/common.ts for task and common types.
  3. Overview of AiderDesk Core Features

    main

    AiderDesk is an orchestration layer for AI-assisted development designed for transparency and control. Key capabilities include:

    • Project & Task Management: Organize work into Projects (repositories) and Tasks (features/bugs).
    • Git Worktrees: Use isolated Git worktrees for each task, allowing the AI to experiment in separate directories without affecting your active local branch.
    • Task & History Control: Duplicate or fork tasks to explore different paths, and delete specific messages from chat history to clean the context window.
    • Smart Context Engine: Uses vector embeddings (LanceDB) and repository mapping for semantic search and intelligent file loading.
    • Review & Approval Gates: Inspect changes via side-by-side or unified diff viewers and configure tool approval gates for shell commands or file operations.
    • Multi-Model Orchestration: Define Agent Profiles with custom system prompts and switch between 25+ providers including OpenAI, Anthropic, Gemini, DeepSeek, and Ollama.
  4. Overview of AiderDesk REST API modules

    main

    The AiderDesk REST API is organized into several functional modules. Use these categories to locate specific endpoints for your integration:

    • Context Management: File and context operations
    • Prompt Execution: AI interaction and response handling
    • Queued Prompts: Managing prompts waiting in the execution queue
    • Project Management: Project lifecycle and configuration
    • Task Management: Task creation, updates, and lifecycle
    • Worktree Operations: Git worktree isolation, merging, and rebase
    • Settings Management: Application and project settings
    • Session Management: Conversation persistence
    • Todo Management: Task tracking
    • Usage Analytics: Token usage and cost tracking
    • System Integration: Environment variables and system info
    • Custom Commands: User-defined command execution
    • MCP Integration: Model Context Protocol server management
  5. Overview of Production Extensions in AiderDesk

    main

    AiderDesk provides a variety of production-ready extensions that add functionality such as tool integration, UI components, security guards, and specialized search capabilities. These extensions hook into the AiderDesk lifecycle using various API methods (e.g., onLoad, getTools, getUIComponents).

    Key categories of extensions include:

    • Tooling & Search: binary-files (multimodal support), searxng-search (web search), codegraph (code intelligence), chunkhound-search (semantic search), and seek (fast ranked search).
    • Security & Safety: protected-paths.ts (blocks sensitive file access), permission-gate.ts (confirms dangerous bash commands), redact-secrets (hides secrets from file reads), and destructive-command-guard (blocks dangerous git/shell commands).
    • Workflow & Planning: bmad (software project workflows), plannotator (structured planning), and task-scheduler (cron/periodic tasks).
    • Model & Provider Integration: cursor (Cursor integration), auggie-sdk (Augment platform), openai-codex (ChatGPT Plus/Pro), and multi-model-run (simultaneous multi-model prompting).
    • UI & Observability: tps-counter (tokens per second), agent-observability (real-time monitoring), and reasoning-selector (reasoning effort selection).
  6. Overview of the wigolo extension

    main

    The wigolo extension provides local-first web search, fetch, crawl, and research tools. It is designed to run intelligence (ranking, embeddings, and browser) locally on your machine, resulting in $0/query costs and no API keys required for core search, fetch, or crawl functionality.

    Key features include:

    • 6 specialized tools: web-search, web-fetch, web-crawl, find-similar, research, and web-agent.
    • Local-first architecture: All processing happens on your machine.
    • Automatic lifecycle management: The extension automatically spawns and manages the wigolo daemon via wigolo-sdk.
    • Zero-config core: Core functionality works out of the box without API keys.
  7. Summary of Extension Patterns in AiderDesk

    main

    AiderDesk extensions can implement various behaviors using specific patterns. Common patterns include:

    PatternExtension ExampleUse Case
    Commandstheme.tsAdding new /commands
    Modesplan-mode.tsCreating custom conversation modes
    Blockingpermission-gate.tsPreventing specific operations
    Modifyingtree-sitter-repo-mapChanging event data
    Configtree-sitter-repo-mapManaging persistent internal settings
    Config Componentexternal-rulesProviding a Settings UI dialog with Save/Cancel
    Agentspirate.tsDefining custom agent profiles
    Toolschunkhound-searchImplementing custom AI tools
    UI Displaytps-counterShowing information in the UI
    UI Interactivemulti-model-runCapturing user input in the UI
    External Librarieskanban-demo.tsUsing third-party npm packages in UI components
  8. Analyze activity with the Usage Dashboard

    main
    The Usage Dashboard provides a comprehensive analysis of AiderDesk activity, allowing you to track usage patterns, monitor costs, and optimize your AI-assisted development workflow. You can use the dashboard to identify cost drivers, visualize token consumption trends, and perform granular cost breakdowns by project and AI model.
  9. Use the Cursor SDK Extension for AiderDesk

    main

    The Cursor SDK extension adds a cursor-sdk/ provider that runs Cursor SDK agents directly within AiderDesk. This allows you to use AiderDesk as a UI for Cursor agents, providing visibility into streamed reasoning, tool calls, and file edits within AiderDesk's task-based interface.

    Note: This extension is more stable than the standard cursor extension because it uses the official @cursor/sdk package, but it lacks tool approval controls. If you need AiderDesk to intercept and approve tool execution, use the cursor extension instead.

  10. Features of the Checkpoints Extension

    main

    The Checkpoints Extension offers several automated capabilities for managing codebase states:

    • Zero Configuration: Works automatically in any Git repository.
    • Full Restore: Resets all files (both tracked and untracked) to the checkpoint state.
    • Persistence: Checkpoints survive restarts because they are stored as git refs under refs/aiderdesk-checkpoints/.
    • Smart Filtering: To optimize performance, snapshots exclude node_modules, .venv, dist, build, files larger than 10 MiB, and directories containing more than 200 files.
    • Persistent Metadata: Checkpoint metadata is stored in .aider-desk/checkpoints/<taskId>.json, which persists across sessions and survives git restores.
    • Worktree Support: Correctly handles git worktree modes by targeting the worktree for operations while keeping storage in the project root.
    • Auto-pruning: Automatically deletes checkpoint refs from previous tasks upon first use in a session.
  11. LSP Integration Extension Overview

    main

    The LSP Integration Extension provides Language Server Protocol (LSP) support for AiderDesk. It enables automatic error detection following file edits and provides specialized LSP-powered tools for the AI assistant.

    Key Features

    • Automatic Diagnostics: After using power---file_edit or power---file_write tools, the extension automatically notifies the relevant LSP server of the change, waits up to 3 seconds for diagnostics, and appends any discovered errors directly to the tool output so the AI can see them.
    • LSP Tools: Provides the lsp-find-references tool to find all references to a symbol at a specific position.