draxarp
Draxarp Intelligence — orbit CLI
Alias: dx
The orbit draxarp (or orbit dx) command manages the Draxarp Development Intelligence module — a second brain for LLM-assisted development. It covers nine resource types:
Resources
| Resource | Alias | Description |
|---|---|---|
project |
proj |
Intelligence projects — group tasks, specs, memories, and docs |
task |
— | Development tasks with status, priority, activity logs, handoffs, focus, and dependencies |
memory |
mem |
Persistent knowledge — patterns, bugs, decisions, domain context |
spec |
— | Specifications with review workflow (draft → review → approved/rejected) |
doc |
— | Technical documentation with slug-based addressing and wikilink support |
sprint |
— | Sprint planning with velocity tracking and AI content suggestions |
capture |
cap |
Context captures — git commits, PRs, CI events, deployments |
graph |
kg |
Knowledge graph — nodes, edges, impact analysis, subgraph, path finding |
decompose |
— | AI-powered task decomposition from descriptions |
Tracking (via orbit tracking)
| Command | Description |
|---|---|
tracking event push |
Push workflow events (skill completions, Jira transitions, agent invocations) |
tracking tkm push |
Push token usage data from local TKM database |
Tracking admin & diagnostics (via orbit dx tracking, alias trk)
| Command | Description |
|---|---|
tool-versions / tv |
Show/set latest expected tool versions (orbit, claude-code, paybook-workflow) |
doctor <user> |
Per-user pipeline diagnosis with verdict and actionable hints |
pipelines |
Cluster-wide pipeline health + list of "stuck users" |
tail |
Tail ingest events across both pipelines; supports --follow |
api-logs |
Query the api_logs table (when request logging is enabled) |
hooks |
Inspect local ~/.claude/settings.json ingest hooks (offline) |
hooks install |
Idempotently wire a Stop hook that runs tracking tkm push after every Claude Code response |
hooks uninstall |
Remove tracking tkm push Stop hooks while preserving unrelated hooks |
# Diagnose why events stopped flowing for a user
orbit dx trk doctor manuel.toala@paybook.me
# Cluster health + stuck users
orbit dx trk pipelines
# Real-time stream for a single user
orbit dx trk tail --user manuel.toala@paybook.me --follow
# Verify the user's local hooks still reference the ingest endpoints
orbit dx trk hooks
# First-run setup: wire the token-usage Stop hook (idempotent)
orbit dx trk hooks install --bake-profile paybook
Without
hooks install, token-usage events only flow when a skill that embedstracking tkm push(e.g.paybook-workflow:commit,paybook-workflow:prime) is explicitly used — producing falseTOKEN_USAGE_BROKENverdicts indoctor.
Quick Reference
Projects
orbit dx proj ls # List projects
orbit dx proj view <id-or-slug> # View project details
orbit dx proj create --name "My Project" # Create project
orbit dx proj delete <id> # Delete project
Slugs everywhere: All
--projectflags and resource IDs accept either UUIDs or slugs. Use slugs for readability:--project draxarp-portalinstead of--project 019cf38c-...
Tasks — Core CRUD
orbit dx task ls --project <id> # List tasks for a project
orbit dx task ls --status in_progress # Filter by status
orbit dx task ls --type epic --project <id> # List only epics
orbit dx task ls --parent <epic-id> # List children of an epic
orbit dx task view <id> # View task details + last 5 activity logs
orbit dx task create --title "Fix bug" --project <id> --priority high
orbit dx task create --title "Wire frontend" --project <id> --depends-on <blocker-id>
orbit dx task create --title "Auth" --project <id> --type epic # Create an epic
orbit dx task create --title "JWT" --project <id> --type story --parent <epic-id> # Story under epic
orbit dx task update <id> --status testing --activity "Running PHPUnit"
orbit dx task assign <id> --assignee claude # Assign task
orbit dx task start <id> # Set status to in_progress
orbit dx task complete <id> # Mark completed (with guard checks)
orbit dx task delete <id> # Delete task
orbit dx task epic <id> # Show epic progress (% complete, children)
Task types: task (default), epic, story
Tasks — Focus & Next (session management)
orbit dx task focus <id> # One command: assign + start + set focus
orbit dx task focus <id> --agent claude # Specify agent (default: claude)
orbit dx task current # Show currently focused task
orbit dx task current --agent claude # For a specific agent
orbit dx task next --project <id> # Next available task by priority (skips epics & blocked)
Tasks — Activity Logs
orbit dx task log <id> "Implemented API endpoints" --tag progress
orbit dx task log <id> "Blocked on DB schema" --tag blocker --agent claude
orbit dx task log <id> "Chose approach A over B" --tag decision
orbit dx task logs <id> # List all logs (newest first)
orbit dx task logs <id> --tag blocker # Filter by tag
orbit dx task logs <id> --limit 10 # Limit results
orbit dx task logs <id> -o json # JSON output
Activity log tags: progress, blocker, decision, hypothesis, tried, result, handoff, note
Tasks — Structured Handoffs & Context
# Record a handoff (session continuity)
orbit dx task handoff <id> \
--done "Implemented X" --done "Added tests for Y" \
--remaining "Wire up frontend" --remaining "Add error handling" \
--decision "Used approach A because of constraint B" \
--uncertain "Not sure if Z is the right abstraction" \
--files "backend/Services/Foo.php,frontend/Show.tsx" \
--agent claude
# Get AI-optimized context for resuming work
orbit dx task context <id> # Human-readable
orbit dx task context <id> -o json # Structured JSON
Tasks — Dependencies
orbit dx task dep <id> --on <blocking-task-id> # Add dependency
orbit dx task deps <id> # Show dependency tree (blocks/blocked-by)
orbit dx task deps <id> -o json # JSON output
Task statuses: pending, in_progress, testing, completed, blocked, cancelled
Task priorities: low, medium, high, critical
Memories
orbit dx mem ls --project <id> # List memories
orbit dx mem ls --type architecture # Filter by type
orbit dx mem view <id> # View memory content
orbit dx mem create --title "Pattern: Repo" --content "..." --project <id> --type patterns
orbit dx mem archive <id> # Archive memory
Memory types: architecture, patterns, bugs, domain, decisions, preferences, context
Specs
orbit dx spec ls --project <id> # List specs
orbit dx spec view <id> # View spec content
orbit dx spec create --title "Auth Spec" --content "..." --project <id>
orbit dx spec submit <id> # Submit for review
orbit dx spec approve <id> # Approve spec
orbit dx spec reject <id> # Reject spec
orbit dx spec delete <id> # Delete spec
Spec statuses: draft, in_review, approved, rejected
Docs
orbit dx doc ls # List all docs
orbit dx doc ls --category architecture # Filter by category
orbit dx doc toc # Table of contents (no content)
orbit dx doc view <id> # View doc by ID
orbit dx doc view architecture/overview # View by slug (auto-detected)
orbit dx doc create --title "API Guide" --category api --slug api/guide
orbit dx doc sync docs.json # Batch sync from JSON file
orbit dx doc publish <id> # Publish draft doc
orbit dx doc archive <id> # Archive doc
orbit dx doc delete <id> # Delete doc
Doc categories: architecture, components, flows, security, api, infrastructure, general
Doc statuses: draft, published, archived
Slug auto-detection: doc view automatically detects whether the argument is a UUID or slug — no --slug flag needed (though it's still supported for explicit override).
Batch sync: doc sync accepts a JSON file with an array of doc objects:
[{"slug": "api/guide", "title": "API Guide", "content": "...", "category": "api"}]
Existing docs (matched by slug) are updated; new slugs are created.
Sprints
orbit dx sprint ls --project <id> # List sprints
orbit dx sprint view <id> # View sprint details
orbit dx sprint create --project <id> --name "Sprint 1" --starts-at 2026-03-16 --ends-at 2026-03-30
orbit dx sprint create --project <id> --name "Sprint 2" --starts-at 2026-03-30 --ends-at 2026-04-13 --goal "Ship auth" --velocity-target 20
orbit dx sprint start <id> # Start a sprint
orbit dx sprint complete <id> # Complete a sprint
orbit dx sprint suggest <id> # AI-powered sprint content suggestions
orbit dx sprint velocity --project <id> # Velocity history (last 5 sprints)
orbit dx sprint velocity --project <id> --count 10 # More history
Context Captures
orbit dx capture ls --project <id> # List captures for a project
orbit dx capture view <id> # View capture details + payload
orbit dx capture webhook --project <id> --source git_commit --payload '{"sha":"abc","message":"fix"}'
orbit dx capture persist <id> # Persist capture as a memory
Context sources: git_commit, git_pr, ci_pipeline, deployment, code_review, manual
Knowledge Graph
# Nodes
orbit dx graph nodes --project <id> # List nodes
orbit dx graph nodes --type module # Filter by type
orbit dx graph node <id> # View node details
orbit dx graph create-node --project <id> --type module --name "AuthService"
orbit dx graph delete-node <id> # Delete a node
# Edges
orbit dx graph create-edge --from <id> --to <id> --relationship depends_on
orbit dx graph delete-edge <id> # Delete an edge
# Analysis
orbit dx graph impact <node-id> # Impact analysis (depth 3)
orbit dx graph impact <node-id> --depth 5 # Deeper analysis
orbit dx graph subgraph <node-id> # Local subgraph (depth 2)
orbit dx graph paths --from <id> --to <id> # Find paths between nodes
orbit dx graph paths --from <id> --to <id> --max-depth 8
Task Decomposition
orbit dx decompose create --project <id> --description "Build user auth with JWT"
orbit dx decompose create --project <id> --description "..." --spec <spec-id> # With spec context
orbit dx decompose ls --project <id> # List decompositions
orbit dx decompose view <id> # View decomposition + options
orbit dx decompose accept <id> --indexes 0,1,2 # Accept and create tasks from selected options
orbit dx decompose reject <id> # Reject decomposition
Typical Agent Workflow
# 1. Orient
orbit dx context -p draxarp --project <id>
# 2. Pick up or create task
orbit dx task next --project <id> -p draxarp # Or create new
orbit dx task focus <task-id> -p draxarp # One command: assign + start + focus
# 3. Work (hooks auto-log progress)
# ... edit files, run tests ...
# 4. Log key decisions/blockers manually
orbit dx task log <id> "Chose X because Y" --tag decision -p draxarp
orbit dx task log <id> "Blocked on Z" --tag blocker -p draxarp
# 5. Handoff before session ends
orbit dx task handoff <id> --done "API done" --remaining "Frontend" --agent claude -p draxarp
# 6. Complete
orbit dx task complete <id> -p draxarp
# 7. Next session picks up with context
orbit dx task context <id> -p draxarp
Configuration
Add to ~/.config/orbit/config.yaml:
profiles:
- name: my-project
services:
- name: draxarp
type: draxarp
base_url: https://your-draxarp-instance.com
auth:
method: token
token: "your-api-token"
headers: # Optional custom headers
X-Tenant: my-tenant-slug # Required for tenant-scoped access
For multi-tenant setups, the X-Tenant header scopes all API responses to that tenant's workspaces and projects. Tokens can be either platform admin (Sanctum) or tenant user (PAT) tokens.
Profile Selection
Use -p <profile> to target a specific profile:
orbit dx proj ls -p draxarp
orbit dx task ls -p draxarp --project <id>
JSON Output
All commands support -o json for machine-readable output:
orbit dx proj ls -o json
orbit dx mem view <id> -o json
orbit dx doc toc -o json
orbit dx task context <id> -o json
orbit dx sprint ls --project <id> -o json
orbit dx graph nodes --project <id> -o json
API Details
The orbit CLI communicates with the Draxarp API at:
- Intelligence resources:
/api/admin/v1/intelligence/*(tasks, memories, specs, docs, sprints, graph, captures, decompose) - Platform resources:
/api/admin/v1/*(projects, workspaces) - Auth:
Authorization: Bearer <token>(platform-api or tenant-api Sanctum guard) - Tenant scoping:
X-Tenant: <slug>header (required for tenant-bound tokens) - Pagination:
{ "success": true, "data": [...], "meta": { "current_page", "last_page", "per_page", "total" } } - Single resource:
{ "success": true, "data": { ... } }
More from jorgemuza/orbit
gitlab
Create and manage GitLab projects, merge requests, pipelines, issues, branches, and more using the orbit CLI. Use this skill whenever the user asks about GitLab repositories, MRs (merge requests), CI/CD pipelines, branches, tags, commits, issues, groups, or project members. Trigger on phrases like 'list MRs', 'check the pipeline', 'create a branch', 'open a merge request', 'view the latest commits', 'list projects in group X', 'retry the CI', 'close the issue', 'who are the members', or any GitLab-related task — even casual references like 'what's running in CI', 'show me the MRs', 'tag a release', 'check if it merged', or 'list repos'. Also trigger when the user mentions PR/pull request in a GitLab context (GitLab calls them merge requests). The orbit CLI alias is `gl`.
97jira
Interact with Jira using the orbit CLI to create, list, view, edit, and transition issues, manage sprints and epics, export epic hierarchies to markdown, manage dashboards and gadgets, manage saved filters, manage custom fields and screen configurations, list statuses and issue types, and write properly formatted descriptions using Jira wiki markup. Use this skill whenever the user asks about Jira tasks, tickets, issues, sprints, epics, dashboards, filters, gadgets, or needs to manage project work items using orbit. Also trigger when the user says things like 'create a ticket', 'create epics', 'move this to done', 'assign the issue', 'update the description', 'format for Jira', 'create a custom field', 'add field to screen', 'list statuses', 'configure Jira', 'create a dashboard', 'add a gadget', 'list filters', 'search filters', 'export epic', 'dump epic hierarchy', or any Jira-related workflow — even casual references like 'update Jira', 'what tickets are in this sprint', 'add a comment to PROJ-123', 'set up AI tracking fields', 'show me the dashboards', or 'create a metrics dashboard'. Trigger especially when descriptions need proper formatting (headings, bullets, tables, links) since Jira Server uses wiki markup, not markdown.
95confluence
Manage Confluence pages using the orbit CLI — create, update, view, publish markdown directories, check page hierarchy, and control page width. Use this skill whenever the user asks about Confluence pages, wiki content, publishing documentation, uploading markdown to Confluence, syncing docs, checking page hierarchy or ancestors, or managing page trees using orbit. Trigger on phrases like 'create a Confluence page', 'update the wiki', 'publish these docs to Confluence', 'upload markdown', 'set page width', 'view page', 'list child pages', 'show hierarchy', 'check page tree', 'what are the ancestors', or any Confluence-related task — even casual references like 'push this to Confluence', 'sync the docs', 'check what pages are under X', or 'show me the page structure'. Also trigger when the user needs to convert markdown to Confluence storage format or wants to track which markdown files map to which Confluence pages via frontmatter metadata (confluence_page_id, confluence_url).
94format-docs
Format and restructure markdown documents so they publish cleanly to Confluence via `orbit confluence publish`. Use this skill whenever the user wants to prepare docs for Confluence, fix markdown formatting for wiki publishing, add frontmatter to docs, restructure a docs directory, or ensure markdown files follow Confluence-friendly conventions. Also trigger when the user says things like 'format these docs', 'prepare docs for Confluence', 'fix the frontmatter', 'restructure the docs folder', 'make these docs publishable', 'clean up the markdown', or any task involving making markdown Confluence-ready — even if they just say 'format this' or 'prep for wiki' without mentioning Confluence explicitly. If the user has a docs/ directory and mentions publishing or syncing, this skill applies.
71github
Create and manage GitHub repositories, pull requests, issues, releases, branches, secrets, and more using the orbit CLI. Use this skill whenever the user asks about GitHub repositories, PRs (pull requests), GitHub Actions workflow runs, branches, tags, commits, issues, releases, secrets, or organization repos. Trigger on phrases like 'list PRs', 'check the actions', 'watch the workflow', 'create a secret', 'open a pull request', 'view the latest commits', 'list repos in org X', 'rerun the workflow', 'close the issue', 'latest release', 'set a GitHub secret', or any GitHub-related task — even casual references like 'what's running in CI', 'show me the PRs', 'tag a release', 'check if it merged', 'list repos', 'is the build passing', or 'add a deploy key secret'. Also trigger when the user wants to monitor CI/CD progress, manage Actions secrets for deployments, or debug failing workflows. The orbit CLI alias is `gh`.
61bitbucket
Manage Bitbucket repositories, pull requests, branches, tags, commits, projects, and admin settings using the orbit CLI. Use this skill whenever the user asks about Bitbucket repos, PRs (pull requests), branches, tags, commits, code review, project management, default reviewer conditions, required approvals, merge restrictions, or PR approvals on Bitbucket Server/Data Center or Bitbucket Cloud. Trigger on phrases like 'list PRs', 'show pull requests', 'create a branch', 'open a PR', 'view the latest commits', 'list repos in project X', 'merge the PR', 'decline the PR', 'approve the PR', 'unapprove', 'request changes', 'needs work', 'mark as needs work', 'reject the PR', 'block the merge', 'check PR activity', 'bypass merge check', 'required approvals', 'reviewer conditions', 'who needs to approve', or any Bitbucket-related task — even casual references like 'what PRs are open', 'show me the repos', 'tag a release', 'check if it merged', 'who approved it', 'list branches', or 'why can't I merge'. Also trigger when the user provides a Bitbucket Server URL (e.g., https://git.example.com/projects/PROJ/repos/my-repo/) or mentions Bitbucket Data Center. The orbit CLI alias is `bb`.
58