Amplifier WAIIDE Extension

Amplifier WAIIDE Extension

Calliope Integration: This component is integrated into the Calliope AI platform. Some features and configurations may differ from the upstream project.

This document describes the CalliopeAI Amplifier WAIIDE extension that provides native IDE integration for Microsoft’s Amplifier AI development environment.

Overview

The Amplifier extension brings Amplifier’s powerful AI agents, knowledge base, and parallel development workflows directly into the WAIIDE interface with:

  • Activity Bar Sidebar - Dedicated Amplifier panel with three views
  • Command Palette Integration - Quick access to all Amplifier features
  • Keyboard Shortcuts - Fast workflow access
  • Terminal Automation - One-click agent launching
  • Beautiful UI - Elegant, simple interface following WAIIDE design patterns

Features

1. AI Agents Panel

Browse and launch specialized AI agents organized by category:

Core Development

  • zen-architect - Design with ruthless simplicity
  • modular-builder - Build modular components
  • bug-hunter - Systematic debugging
  • test-coverage - Comprehensive testing
  • api-contract-designer - Clean API design

Analysis & Optimization

  • security-guardian - Security analysis
  • performance-optimizer - Performance profiling
  • database-architect - Database design

Knowledge & Insights

  • concept-extractor - Extract knowledge from docs
  • insight-synthesizer - Find hidden connections

2. Knowledge Base Panel

Interact with Amplifier’s knowledge extraction and synthesis system:

  • Query Knowledge - Search your project’s knowledge base
  • Update Knowledge - Extract and synthesize new knowledge
  • View Graph - Visualize knowledge connections
  • Show Statistics - Knowledge base metrics

3. Worktrees Panel

Manage parallel development branches:

  • Create Worktree - New parallel development environment
  • List All - See all active worktrees
  • Switch Worktree - Change between worktrees

Usage

Launching Amplifier

Via Sidebar:

  1. Click the Amplifier icon in the Activity Bar (left sidebar)
  2. In the “AI Agents” panel, click the rocket icon at the top
  3. Amplifier launches in an integrated terminal

Via Command Palette:

  1. Press Ctrl+Shift+P (or Cmd+Shift+P on Mac)
  2. Type “Amplifier: Launch Claude WAIIDE”
  3. Press Enter

Via Keyboard:

  • Ctrl+Shift+A (or Cmd+Shift+A on Mac)

Using Agents

From Sidebar:

  1. Navigate to the “AI Agents” panel
  2. Browse agents by category
  3. Click any agent to launch it

From Command Palette:

  1. Ctrl+Shift+P → “Amplifier: Run Agent…”
  2. Select agent from the list
  3. Agent launches with Claude WAIIDE

Via Keyboard:

  • Ctrl+Shift+Alt+A (or Cmd+Shift+Alt+A on Mac)

Knowledge Base Operations

Query Knowledge:

1. Click "Query Knowledge" in the Knowledge Base panel
2. Enter your search query
3. Results appear in the terminal

Update Knowledge:

1. Click "Update Knowledge" in the Knowledge Base panel
2. Choose update type:
   - Full Update (extract + synthesize)
   - Extract Only
   - Synthesize Only
3. Process runs in terminal

Working with Worktrees

Create New Worktree:

1. Click "Create Worktree" in the Worktrees panel
2. Enter a name (e.g., "feature-oauth")
3. Worktree created with isolated environment

Configuration

Access settings via:

  • Command Palette → “Amplifier: Configure”
  • WAIIDE Settings → “Amplifier”

Available Settings

SettingDescriptionDefault
amplifier.enabledEnable Amplifier integrationtrue
amplifier.autoActivateAuto-activate in new terminalsfalse
amplifier.dataDirectoryData storage location~/.amplifier-data
amplifier.defaultAgentDefault agent for quick launch""

Auto-Activation

When enabled, new terminals automatically have Amplifier’s Python environment activated:

{
  "amplifier.autoActivate": true
}

Keyboard Shortcuts

ShortcutCommandDescription
Ctrl+Shift+ALaunch Claude WAIIDEStart Amplifier session
Ctrl+Shift+Alt+ARun AgentLaunch specific agent

Note: Use Cmd instead of Ctrl on macOS

Extension Architecture

Components

Main Extension (extension.ts)

  • Command registration
  • Event handlers
  • Terminal automation
  • Configuration management

Tree Providers (*Provider.ts)

  • AgentsProvider - AI agents list with categories
  • KnowledgeProvider - Knowledge base operations
  • WorktreesProvider - Worktree management

Integration Points

  1. Terminal Integration

    • Creates named terminals with icons
    • Activates Python environment
    • Sends commands automatically
    • Maintains working directory context
  2. Configuration API

    • WAIIDE settings integration
    • Workspace and global scopes
    • Runtime updates
  3. Webview Panels

    • Agent details views
    • Knowledge graph visualization (future)
    • Interactive UIs

Development

Building the Extension

cd calliope-amplifier-extension
npm install
npm run compile

Project Structure

calliope-amplifier-extension/
├── package.json          # Extension manifest
├── tsconfig.json         # TypeScript configuration
├── webpack.config.js     # Build configuration
└── src/
    ├── extension.ts      # Main extension WAIIDE
    ├── agentsProvider.ts # AI agents tree view
    ├── knowledgeProvider.ts # Knowledge base tree view
    └── worktreesProvider.ts # Worktrees tree view

Build Scripts

The extension is built during Docker image creation:

# From project root
./scripts/build-amplifier-extension.sh

This script:

  1. Installs npm dependencies
  2. Compiles TypeScript to JavaScript
  3. Bundles with Webpack
  4. Copies to WAIIDE extensions directory

User Experience Design

Design Principles

  1. Simplicity - Minimal clicks to accomplish tasks
  2. Elegance - Clean, uncluttered interface
  3. Efficiency - Keyboard shortcuts for power users
  4. Discovery - Easy to explore and learn features
  5. Consistency - Follows WAIIDE design patterns

UI Patterns

Sidebar Organization:

  • Three logical groupings (Agents, Knowledge, Worktrees)
  • Collapsible categories
  • Icons for visual recognition
  • Tooltips for descriptions

Command Palette:

  • Consistent naming: “Amplifier: [Action]”
  • Searchable by feature
  • Contextual descriptions

Terminal Behavior:

  • Named terminals (e.g., “Amplifier”, “Knowledge Query”)
  • Custom icons per task
  • Workspace-aware commands
  • Non-blocking execution

Troubleshooting

Extension Not Loading

Check extension is installed:

# Inside container
ls /opt/calliope/WAIIDE-server/extensions/ | grep amplifier

Should see: calliope-amplifier

Commands Not Appearing

  1. Reload WAIIDE window: Ctrl+Shift+P → “Reload Window”
  2. Check extension is activated: Output panel → “Extension Host”

Amplifier Not Found in Terminal

Ensure amplifier is set up for your user:

sudo /usr/local/bin/setup-amplifier

Terminal Commands Failing

Check Python environment:

which python
# Should show: ~/amplifier/.venv/bin/python

source ~/amplifier/.venv/bin/activate

Future Enhancements

Planned Features

  1. Interactive Agent Selection

    • Visual agent picker with descriptions
    • Recent agents history
    • Favorite agents
  2. Knowledge Graph Visualization

    • Interactive graph in webview
    • Click to explore connections
    • Search and filter nodes
  3. Worktree Workspace Integration

    • One-click workspace switching
    • Diff view between worktrees
    • Merge conflict resolution
  4. Status Bar Integration

    • Active agent indicator
    • Knowledge base status
    • Quick actions
  5. AI Chat Panel

    • Integrated Claude WAIIDE chat
    • Side-by-side with editor
    • Context-aware suggestions

Contributing

The extension is designed for easy extension:

Adding New Agents:

// In agentsProvider.ts
new AgentItem('new-agent', 'Description', 'type', ...)

Adding Commands:

// In extension.ts
context.subscriptions.push(
    WAIIDE.commands.registerCommand('amplifier.newCommand', async () => {
        // Implementation
    })
);

Adding Views:

// In package.json
"views": {
  "amplifier-sidebar": [{
    "id": "amplifier.newView",
    "name": "New View"
  }]
}

References