Lightweight agent orchestration dev tool that lives in your repo
> /plugin marketplace add sudocode-ai/sudocode> /plugin install sudocode@sudocode-marketplace
Repo: sudocode-ai/sudocode
What's inside
sudocode is a lightweight agent orchestration system that lives in your repo. Adding sudocode into your repo adds instant organizational capabilities to your coding agents. They'll gain the ability to track context over long-horizon tasks and work collaboratively on complex tasks.
sudocode tracks human-specified requirements and objectives (what to do) as specs, and agent runtime context and plans (how to implement) as issues. These are trackable in git as a form of version-controlled memory for your agents. Specs/issues are both human and agent-editable. This allows agents to manage their own context and leave contextual breadcrumbs as they run for all agents to reference.
Specs and issues form the backbone for advanced agent coordination and automation. Use specs to define high-level requirements and let agents carry out the implementation and manage their own issues.
The sudocode package includes a CLI, local server/UI, and an MCP server.
Use the CLI for managing specs and issues in sudocode's agent memory system. It contains a complete interface for viewing, editing, and managing relationships between entities.
Use the local server to automatically sync memory and enable agent execution and visualization. The issue kanban view helps you track issue status and progress. You can spawn new agents, update agent implementation plans, and provide feedback or guidance to running agents in a single, focused view.
The spec editor view boosts spec-driven development to new heights. Edit and review specs with a full-featured block or markdown editor. Agents leave feedback on specs as they execute, so you can track their work and stay in the know for with the code they produce.
Once you have a dependency graph of issues, you can also automate the implementation of each issue in the graph as a workflow. This runs each issue in topological order and accumulates changes in a temp branch/worktree. As it's executing, each issue will have its own commit, so you can revert backwards in the commit history if you want to continue developing from a specific point.
If you're up for it, you can even monitor all running agent trajectories at the same time.
sudocode provides a structured yet flexible system for organizing the chaos of human-AI collaboration in software development.
# Install globally (recommended: use npx instead to avoid Node version conflicts)
npm install -g sudocode
# Initialize a sudocode project in your project directory.
sudocode init
# Run the local sudocode server from anywhere
sudocode server
# To connect your agent directly to sudocode, install our plugin
claude plugin marketplace add sudocode-ai/sudocode
claude plugin install sudocode
# Note, instructions for other agents can be found in the quick start guide
Check out our Quick Start Guide for tutorials and walkthroughs.
sudocode now supports syncing with external spec and issue tracking systems through a plugin-based integration framework. This allows you to maintain specs and issues in your preferred tools while keeping sudocode's agent memory system in sync.
Supported Integrations:
| Integration | Description | Sync Direction |
|---|---|---|
| Beads | Git-native issues system | Bidirectional |
| Spec-Kit | Markdown-based specification system | Bidirectional |
| OpenSpec | Structured spec and change proposal system | Bidirectional |
| Jira | Atlassian issue tracking | Coming soon |
| Linear | Modern issue tracking | Coming soon |
In the sudocode UI, enable integrations in Settings > Integrations. Via the CLI, update with sudocode plugin.
Integrations automatically create specs, issues, and relationships between synced entities and support real-time file watching for immediate sync updates. Use sudocode to link and implement work items across different systems.
We're actively adding support for new integration targets. Please file an issue or drop a message for anything you would like sudocode to support!
Your context and designs are just as valuable as the code being written. Code is often over-specified, while your actual requirements are under-specified and come with design choices and intent that is not immediately captured.
With sudocode, you treat your git repo as a distributed context database to capture context and make it readily available to coding agents. You can track user intent (specs), agent tasks (issues), and agent trajectories (executions) as they evolve alongside your codebase.
Git handles distribution while AI handles merge conflicts.
A spec can be thought of as user intent + relevant context. Combined, a spec contains enough information for an agent to carry out the requirements defined in the task.
Reduce the chaos of "vibe coding" by establishing clear, executable requirements in order to produce predictable outcomes.
sudocode implements a 4-tiered abstraction structure for representing context, corresponding to increasing granularity from high-level requirements to low-level implementation:
A primitive for user intent and contextβrequirements, RFCs, research questions, design decisions. Specs capture WHAT you want.
.sudocode/specs/A primitive for agent intent and contextβwork items derived from specs, capturing tasks within agent scope.
[[@ISSUE-001]] referencesblocks, related, parent-child, discovered-from.sudocode/issues/)The execution abstractionβrepresents the actual trajectory of an agentic loop run against an issue.
.sudocode/agents/A primitive representing state changes from agent execution.
Every entity has both a human-editable format (Markdown + YAML) and a machine-optimized format (JSONL + SQLite):
Relationships are tracked in both directions:
## Requirements
1. Support OAuth 2.0 [[ISSUE-001]]
2. Multi-factor authentication [[ISSUE-002]]
See also [[SPEC-010]] for API design patterns.
Backlinks are automatically tracked in the relationship graph.
Navigate dependencies, hierarchies, and relationships:
Agents can update specs with findings during execution, bridging lower to higher abstraction levels to keep humans in the loop.
Open execution worktrees directly in your preferred IDE with a single click. The UI integrates with popular editors to streamline your workflow when reviewing or modifying agent-generated code.
Supported Editors:
code)cursor)windsurf)idea)zed)xed)Configuration:
Editor settings are in .sudocode/config.json (gitignored, created during init):
{
"editor": {
"editorType": "vs-code"
}
}
Supported Editor Types:
"vs-code" - Visual Studio Code"cursor" - Cursor"windsurf" - Windsurf"intellij" - IntelliJ IDEA"zed" - Zed"xcode" - Xcode"custom" - Custom command (requires customCommand field)Custom Editor Example:
{
"editor": {
"editorType": "custom",
"customCommand": "code-insiders"
}
}
Troubleshooting:
If the editor doesn't open:
code /path/to/directory.sudocode/specs/specs.jsonl, .sudocode/issues/issues.jsonl) committed to git.sudocode/cache.db, gitignored)git pull)This design provides centralized database semantics through distributed git infrastructure.
Define requirements, behaviors, abstractions, and design decisions:
sudocode spec create auth-system
# Then update created spec markdown file.
For complex specs, create hierarchical or cross-cutting relationships by creating references between specs and issues.
See [[SPEC-002]] for detailed API contracts.
Invoke a planning agent to collaboratively define implementation issues.
The agent:
blocks, related, parent-child relationships[[@ISSUE-001]]TODO: Add a plan CLI command that hooks into the configured agent.
Invoke your coding agent to implement issues. Agents can pull ready issues or issue details to align on work items. Agents can also refer to specs for added context.
Artifacts and tracked as agents execute.
sudocode embraces:
.claude/
.claude-plugin/
marketplace.json
plugin.json
README.md
run-mcp.sh
CLAUDE.md
commands/
openspec/
apply.md
archive.md
proposal.md
speckit.analyze.md
speckit.checklist.md
speckit.clarify.md
speckit.constitution.md
speckit.implement.md
speckit.plan.md
speckit.specify.md
speckit.tasks.md
speckit.taskstoissues.md
.gitattributes
.github/
workflows/
build-binaries.yml
publish.yml
test.yml
version_test.yml
.gitignore
.gitmodules
.npmrc
.specify/
memory/
constitution.md
scripts/
bash/
check-prerequisites.sh
common.sh
create-new-feature.sh
setup-plan.sh
update-agent-context.sh
templates/
agent-file-template.md
checklist-template.md
plan-template.md
spec-template.md
tasks-template.md
.sudocode/
.gitignore
config.json
issues.jsonl
specs.jsonl
build-scripts/
esbuild-cli.js
esbuild-mcp.js
esbuild-server.js
package-sea.js
cli/
.npmignore
package.json
README.md
src/
auth/
claude.ts
clear.ts
credentials.ts
index.ts
status.ts
cli/
cli.ts
auth-commands.ts
config-commands.ts
feedback-commands.ts
init-commands.ts
issue-commands.ts
merge-commands.ts
plugin-commands.ts
query-commands.ts
reference-commands.ts
relationship-commands.ts
remote-commands.ts
server-commands.ts
spec-commands.ts
status-commands.ts
sync-commands.ts
update-commands.ts
config.ts
db.ts
export.ts
filename-generator.ts
git-merge.ts
id-generator.ts
import.ts
index.ts
install-source.ts
integrations/
base-provider.ts
config-resolver.ts
config-validator.ts
index.ts
plugin-loader.ts
registry.ts
sync-coordinator.ts
types.ts
utils/
conflict-resolver.ts
jsonl.ts
markdown.ts
merge-resolver.ts
operations/
events.ts
external-links.ts
feedback-anchors.ts
feedback.ts
index.ts
issues.ts
README.md
references.ts
relationships.ts
specs.ts
tags.ts
transactions.ts
remote/
claude-auth.ts
config.ts
errors.ts
git-context.ts
spawn-service.ts
types.ts
sync.ts
telemetry.ts
test-schema.ts
types.ts
update-checker.ts
validation.ts
version.ts
watcher.ts
yaml-conflict-resolver.ts
yaml-converter.ts
tests/
e2e/
remote-spawn.test.ts
integration/
entity-level-conflict-detection.test.ts
merge-commands.test.ts
round-trip.test.ts
three-way-merge-scenarios.test.ts
yaml-merge.test.ts
unit/
auth/
claude.test.ts
clear.test.ts
credentials.test.ts
integration.test.ts
status.test.ts
cli/
feedback-commands.test.ts
init-command.test.ts
issue-commands.test.ts
plugin-commands.test.ts
query-commands.test.ts
reference-commands.test.ts
relationship-commands.test.ts
server-commands.test.ts
spec-commands.test.ts
status-commands.test.ts
sync-commands.test.ts
update-commands.test.ts
config.test.ts
export.test.ts
filename-generator.test.ts
git-merge.test.ts
id-generator.test.ts
import.test.ts
install-source.test.ts
integrations/
base-provider.test.ts
config-resolver.test.ts
config-validator.test.ts
conflict-resolver.test.ts
sync-coordinator.test.ts
jsonl.test.ts
markdown.test.ts
merge-resolver.test.ts
operations/
external-links.test.ts
feedback-anchors.test.ts
feedback.test.ts
issues.test.ts
references.test.ts
relationships.test.ts
specs.test.ts
tags.test.ts
transactions.test.ts
read-git-stage.test.ts
remote/
claude-auth.test.ts
config.test.ts
git-context.test.ts
spawn-service.test.ts
sync-rename.test.ts
sync.test.ts
telemetry.test.ts
update-checker.test.ts
watcher-callbacks.test.ts
watcher-frontmatter-writeback.test.ts
watcher.test.ts
yaml-conflict-resolver.test.ts
yaml-converter.test.ts
tsconfig.json
vitest.config.ts
CONTRIBUTING.md
docs/
cli.md
data-model.md
feedback-mechanisms.md
mcp.md
overview.md
specs/
markdown-source-of-truth-implementation.md
markdown-source-of-truth.md
storage.md
todo.md
frontend/
.env.example
.eslintrc.cjs
.gitignore
.npmignore
.prettierrc
components.json
index.html
package-lock.json
package.json
playwright-report/
index.html
playwright.config.ts
postcss.config.js
public/
favicon.ico
kokoro-test.html
logo.png
src/
App.tsx
components/
chat-widget/
ChatWidget.tsx
ChatWidgetContent.tsx
ChatWidgetFAB.tsx
ChatWidgetOverlay.tsx
ChatWidgetPanel.tsx
ExecutionSelector.tsx
index.ts
entities/
EntityBadge.tsx
index.ts
IssueHoverContent.tsx
SpecHoverContent.tsx
executions/
AdhocExecutionDialog.tsx
AgentConfigPanel.tsx
AgentSelector.tsx
AgentSettingsDialog.tsx
AgentTrajectory.tsx
BranchSelector.tsx
ClaudeCodeConfigForm.tsx
CleanupWorktreeDialog.tsx
CodeChangesPanel.tsx
CodexConfigForm.tsx
CommitChangesDialog.tsx
CopilotConfigForm.tsx
CursorConfigForm.tsx
DeleteExecutionDialog.tsx
DeleteWorktreeDialog.tsx
DiffViewer.tsx
ExecutionChainTile.tsx
ExecutionHistory.tsx
ExecutionMonitor.tsx
ExecutionPreview.tsx
ExecutionsGrid.tsx
ExecutionsSidebar.tsx
ExecutionStatusBadge.tsx
ExecutionView.tsx
FollowUpDialog.tsx
GeminiConfigForm.tsx
InlineExecutionView.tsx
MessageStream.tsx
OpencodeConfigForm.tsx
PermissionRequest.tsx
SyncPreviewDialog.tsx
TodoTracker.tsx
ToolCallViewer.tsx
import/
AlreadyImportedState.tsx
ExternalLinkBadge.tsx
ImportDialog.tsx
ImportPreview.tsx
index.ts
ProviderIcon.tsx
RefreshConflictDialog.tsx
StaleLinkWarning.tsx
issues/
ActivityTimeline.tsx
CreateIssueDialog.tsx
DeleteIssueDialog.tsx
IssueCard.tsx
IssueEditor.tsx
IssueKanbanBoard.tsx
IssuePanel.tsx
SyncIndicator.tsx
WorkflowIndicator.tsx
layout/
HelpDialog.tsx
MainLayout.tsx
Panel.tsx
SettingsDialog.tsx
Sidebar.tsx
projects/
DirectoryBrowser.tsx
ProjectSwitcher.tsx
relationships/
RelationshipForm.tsx
RelationshipList.tsx
routing/
DefaultRoute.tsx
LegacyRedirect.tsx
ProtectedRoute.tsx
specs/
AddFeedbackDialog.tsx
AlignedFeedbackPanel.tsx
DeleteSpecDialog.tsx
extensions/
EntityMention.tsx
EntityMentionComponent.tsx
FeedbackMark.ts
markdown-utils.ts
FeedbackAnchor.tsx
FeedbackCard.tsx
FeedbackForm.tsx
MarkdownLine.tsx
SpecCard.tsx
SpecEditor.tsx
SpecFeedbackPanel.tsx
SpecList.tsx
SpecViewer.tsx
SpecViewerTiptap.tsx
TableOfContentsPanel.tsx
TableWithControls.tsx
tiptap.css
TiptapEditor.tsx
TiptapMarkdownViewer.tsx
ui/
alert-dialog.tsx
badge.tsx
button.tsx
card.tsx
checkbox.tsx
collapsible.tsx
context-search-dropdown.tsx
context-search-textarea.tsx
dialog.tsx
dropdown-menu.tsx
entity-combobox.tsx
hover-card.tsx
input.tsx
issue-selector.tsx
kanban/
index.tsx
label.tsx
multi-issue-selector.tsx
popover.tsx
radio-group.tsx
scroll-area.tsx
select.tsx
separator.tsx
sonner.tsx
spec-selector.tsx
switch.tsx
tabs.tsx
textarea.tsx
tooltip.tsx
voice/
index.ts
VoiceInputButton.tsx
VoiceNarrationToggle.tsx
VoiceSpeakingIndicator.tsx
workflows/
CreateWorkflowDialog.tsx
DeleteAllWorkflowsDialog.tsx
DeleteWorkflowDialog.tsx
EscalationBanner.tsx
EscalationPanel.tsx
index.ts
OrchestratorGuidancePanel.tsx
OrchestratorTrajectory.tsx
ResumeWorkflowDialog.tsx
WorkflowCard.tsx
WorkflowControls.tsx
WorkflowDAG.tsx
WorkflowStepNode.tsx
WorkflowStepPanel.tsx
... 812 moreFAQ
sudocode is a Claude Code plugin with 1 hand-picked skill for development work, indexed on Flowy. Install it with the command on its page. It includes sudocode. Its skills do not fire on their own yet. Request auto-invocation to have Flowy route them as you prompt. Free and open source.