@appsmithery/vscode-codechef
v0.4.1
Published
AI-powered task orchestration with LangGraph single-orchestrator architecture, 150+ MCP tools, and LangChain function calling. Submit development tasks via Copilot Chat.
Maintainers
Readme
code/chef Multi-Agent Orchestrator
VS Code extension that integrates code/chef LangGraph orchestrator into Copilot Chat, enabling you to submit development tasks with LangChain-powered function calling and progressive tool disclosure from any workspace.
Features
- @codechef Chat Participant: Submit tasks directly from Copilot Chat with natural language
- LangGraph Workflow Engine: Single orchestrator with internal agent nodes and PostgreSQL checkpointing
- LangChain Function Calling: Orchestrator can INVOKE 150+ MCP tools via LangChain's native tool binding
- Progressive Tool Disclosure: 80-90% token reduction through intelligent tool filtering (minimal/agent_profile/progressive/full strategies)
- Agent Node Routing: Routes tasks to internal agent nodes (feature-dev, code-review, infrastructure, cicd, documentation)
- Workspace Context Extraction: Automatically gathers git branch, open files, project type
- Real-Time Approvals: Linear integration for HITL approval workflow (<1s notification latency)
- Observability: LangSmith LLM tracing + Prometheus HTTP metrics
- Session Management: PostgreSQL-backed multi-turn conversations with workflow state retention
Quick Start
1. Install Extension
code --install-extension appsmithery.vscode-devtools-copilot2. Configure Orchestrator
Press F1 → "code/chef: Configure" → Enter https://codechef.appsmithery.co/api
3. Use in Copilot Chat
Open Copilot Chat (Ctrl+I) and type:
@codechef Add JWT authentication to my Express APIThe orchestrator will decompose your task into subtasks and route them to appropriate agents.
Commands
Chat Participant Commands
@codechef <task>- Submit development task@codechef /status [task-id]- Check task status@codechef /approve <task-id> <approval-id>- Approve pending task@codechef /tools- List available MCP tools
Command Palette
- code/chef: Submit Task - Submit task via input box
- code/chef: Check Status - Check task status via input box
- code/chef: Configure - Update orchestrator URL
- code/chef: Show Approvals - Open Linear approval hub
- code/chef: Clear Cache - Clear session cache
Configuration
Settings
codechef.orchestratorUrl- Orchestrator endpoint (default:https://codechef.appsmithery.co/api)codechef.mcpGatewayUrl- MCP gateway endpoint (default:https://codechef.appsmithery.co/api)codechef.linearHubIssue- Linear approval hub issue (default:DEV-68)codechef.linearWorkspaceSlug- Linear workspace slug for approval links (default:dev-ops)codechef.autoApproveThreshold- Auto-approve risk level (default:low)codechef.enableNotifications- Show toast notifications (default:true)codechef.langsmithUrl- LangSmith project URL for traces
Workspace Configuration
Create .vscode/settings.json:
{
"codechef.orchestratorUrl": "https://codechef.appsmithery.co/api",
"codechef.enableNotifications": true,
"codechef.autoApproveThreshold": "low"
}Examples
Basic Task Submission
@codechef Add authentication to my APIResponse:
✅ Task Submitted
Task ID: abc123...
Subtasks (4):
💻 feature-dev: Implement JWT middleware
💻 feature-dev: Add login/logout endpoints
🔍 code-review: Security audit
📚 documentation: Generate API docs
Estimated Duration: 30 minutesCheck Task Status
@codechef /status abc123Response:
Task Status: abc123
Status: in_progress
Progress: 2/4 subtasks
✅ feature-dev: Implement JWT middleware (completed)
🔄 feature-dev: Add login/logout endpoints (in progress)
⏳ code-review: Security audit (pending)
⏳ documentation: Generate API docs (pending)List MCP Tools
@codechef /toolsResponse shows 150+ tools across 17 MCP servers:
- Development: filesystem, github, gitlab, sequential-thinking
- Infrastructure: docker (containaier), terraform, kubernetes, prometheus
- Documentation: notion, context7, docs-langchain
- Memory: mcp-memory, everything
- Database: postgres, sqlite
- Productivity: linear, slack, gmail
- AI: fetch (web scraping)
Progressive Disclosure: Only relevant tools (10-30) are loaded per task for 80-90% token savings while maintaining full tool invocation capability via LangChain function calling.
Approval Workflow
High-risk tasks require human approval:
- Task Submitted → Risk assessed by guardrail system
- Sub-Issue Created → Linear creates sub-issue under DEV-68 (HITL Approvals Hub) using agent-specific template
- User Notified → Toast notification (if enabled) or status bar indicator with Linear link
- Approve/Reject → Change Linear sub-issue status to "Done" (approved) or "Canceled" (rejected)
- Agents Proceed → Execution continues after approval
Linear Integration:
- Parent Hub: DEV-68
- Sub-issues include: Risk level emoji, task description, metadata, timestamp
- Templates:
HITL_ORCHESTRATOR_TEMPLATE_UUID(and per-agent variants)
Observability
All tasks are traced and monitored:
- LangSmith Traces: View Project
- Prometheus Metrics: https://codechef.appsmithery.co
- Linear Approvals: https://linear.app/dev-ops/issue/DEV-68 (HITL Approvals Hub with sub-issues)
Troubleshooting
Cannot connect to orchestrator
- Check URL in settings:
code/chef: Configure - Verify service health:
curl https://codechef.appsmithery.co/api/health - Check firewall allows outbound connections
No tools appearing
- Clear cache:
code/chef: Clear Cache - Restart VS Code
- Check MCP gateway:
curl https://codechef.appsmithery.co/api/health
Approval notifications not working
- Verify Linear OAuth token configured:
LINEAR_API_KEYin.env - Check HITL templates configured:
HITL_ORCHESTRATOR_TEMPLATE_UUID, etc. - Subscribe to DEV-68 issue in Linear for sub-issue notifications
- Verify approval hub setting:
LINEAR_APPROVAL_HUB_ISSUE_ID=DEV-68(note: PR-68 is internal reference, DEV-68 is public identifier)
Development
Build from Source
cd extensions/vscode-devtools-copilot
npm install
npm run compileRun Extension Development Host
task dev
# or
code --extensionDevelopmentPath=$(pwd)Package Extension
task package
# Creates vscode-devtools-copilot-0.1.0.vsixInstall Locally
task install-localArchitecture
┌─────────────────────────────────────┐
│ VS Code Workspace │
│ │
│ ┌────────────────────────────────┐ │
│ │ Copilot Chat │ │
│ │ @codechef "Add auth to API" │ │
│ └──────────┬─────────────────────┘ │
│ │ │
│ ┌──────────▼─────────────────────┐ │
│ │ code/chef Chat Participant │ │
│ │ - Context extraction │ │
│ │ - Session management │ │
│ │ - Linear notifications │ │
│ └──────────┬─────────────────────┘ │
└─────────────┼───────────────────────┘
│ HTTP POST
▼
┌──────────────────────────────────────────────────────────────┐
│ code/chef Droplet (codechef.appsmithery.co) │
│ │
│ ┌─────────────────────────────────────────────────────────┐ │
│ │ LangGraph Orchestrator (:8001) │ │
│ │ ┌─────────────────────────────────────────────────────┐ │ │
│ │ │ LangChain Tool Binding (3-Layer Architecture) │ │ │
│ │ │ 1. Discovery: progressive_mcp_loader.py │ │ │
│ │ │ (150+ tools → 10-30 relevant, 80-90% saved) │ │ │
│ │ │ 2. Conversion: mcp_client.to_langchain_tools() │ │ │
│ │ │ (MCP schemas → LangChain BaseTool instances) │ │ │
│ │ │ 3. Binding: llm.bind_tools(tools) │ │ │
│ │ │ (LLM can INVOKE tools via function calling) │ │ │
│ │ └─────────────────────────────────────────────────────┘ │ │
│ │ ┌─────────────────────────────────────────────────────┐ │ │
│ │ │ LangGraph StateGraph (Workflow Engine) │ │ │
│ │ │ - Task decomposition node │ │ │
│ │ │ - Supervisor node (routing logic) │ │ │
│ │ │ - 5 Agent nodes (internal workflow steps): │ │ │
│ │ │ • feature-dev (codellama-13b) │ │ │
│ │ │ • code-review (llama-3.1-70b) │ │ │
│ │ │ • infrastructure (llama-3.1-8b) │ │ │
│ │ │ • cicd (llama-3.1-8b) │ │ │
│ │ │ • documentation (mistral-7b) │ │ │
│ │ │ - Approval gate node (HITL workflow interrupts) │ │ │
│ │ │ - PostgreSQL checkpointing (workflow state) │ │ │
│ │ └─────────────────────────────────────────────────────┘ │ │
│ └───────────┬─────────────────────────────────────────────┘ │
│ │ │
│ ┌───────────▼──────────────────────────────────────────┐ │
│ │ MCP Gateway (:8000) │ │
│ │ - 17 MCP servers, 150+ tools │ │
│ │ - Stdio communication with orchestrator │ │
│ └──────────────────────────────────────────────────────┘ │
└───────────────────────────────────────────────────────────────┘Contributing
- Fork the repository
- Create feature branch:
git checkout -b feature/new-capability - Commit changes:
git commit -am 'Add capability' - Push to branch:
git push origin feature/new-capability - Create Pull Request
License
MIT License - see LICENSE file
Support
- GitHub Issues: https://github.com/Appsmithery/code/chef/issues
- Linear Project: https://linear.app/project-roadmaps/project/ai-devops-agent-platform-78b3b839d36b
- Discord: https://discord.gg/appsmithery
Related
Documentation
- code/chef Repository
- Progressive Tool Disclosure Architecture
- Linear Integration Guide
- Linear HITL Workflow
- Deployment Guide
Integrations
- LangChain LLM Framework
- Model Context Protocol (MCP)
- DigitalOcean Gradient AI
- LangSmith LLM Observability
