Lockstep Core
Server Configuration
Describes the environment variables required to run the server.
| Name | Required | Description | Default |
|---|---|---|---|
| LOCKSTEP_DATA_DIR | No | Directory where Lockstep stores chains, tickets, capacity, and other data files. Defaults to ~/.lockstep/data. | ~/.lockstep/data |
Instructions
Guidance the server publishes about itself, which clients place ahead of the tool catalog so the model reads it before choosing anything.
This server publishes no instructions, or was last inspected before Glama recorded them.
Capabilities
Features and capabilities supported by this server
Protocol revision2025-11-25
| Capability | Details |
|---|---|
| tools | {
"listChanged": false
} |
| prompts | {
"listChanged": false
} |
| resources | {
"subscribe": false,
"listChanged": false
} |
| experimental | {} |
Tools
Functions exposed to the LLM to take actions
| Name | Description |
|---|---|
| create_chainA | Create a new chain from a ticket. Generates chain_id from kebab-case title. |
| read_chainA | Read chain state filtered through progressive disclosure. Early-phase chains show fewer fields to reduce cognitive load. Full data always accessible via direct YAML read. |
| get_chain_statusC | Lightweight status check: current link, phase, health. |
| set_chain_statusC | Update chain status with state transition validation. |
| set_chain_entityC | Tag chain with entity ownership (which subsidiary). |
| update_chain_metadataC | General metadata updates: vision, entity, capacity_role, notes. |
| add_chain_linkB | Add a new session link to a chain. Auto-increments link_number. |
| complete_chain_linkC | Mark a chain link as complete, record deliverables. |
| pause_chainB | Pause chain — preserves state, signals 'not abandoned'. Idempotent. |
| resume_chainA | Resume a paused chain. Only valid from paused state. |
| complete_chainA | Mark entire chain complete. Lifecycle hooks per Decision 1. |
| archive_chainC | Move completed chain to archive with retention metadata. |
| branch_chainB | Fork chain when work splits. Parent doesn't complete until all branches do. |
| spawn_child_chainA | Fork a chain when work needs a different type (Decision 5). |
| rename_chainA | Rename a chain: updates chain_id, renames YAML file, and fixes all cross-references. |
| create_ticketB | Create a new ticket with auto-assigned sequential ID. |
| read_ticketB | Read full ticket state. |
| update_ticketC | Update ticket metadata and/or append a note. |
| close_ticketB | Close ticket. Advisory: flags if associated chain is incomplete. |
| tag_ticketB | Add or remove tags on a ticket. |
| link_ticket_chainB | Associate a ticket with a chain. |
| promote_ticketB | Promote a standalone ticket into a chain (Decision 1). Creates a chain from the ticket, scans for related tickets (same entity + overlapping tags), and returns candidates for nesting. Optionally nests specified tickets immediately. |
| read_capacityB | Read growth stage for a specific role or all roles. |
| update_capacity_stageC | Record a stage transition (training-wheels -> partnership -> safety-net). |
| record_capacity_eventC | Log a capacity-relevant event with typed attribution (Partner's field notes). |
| get_capacity_eventsC | Query capacity event history with optional filters. |
| check_stagnationB | Evaluate if any role has hit its stagnation threshold. Stagnation = active engagement but no growth. Dormancy = no engagement at all. Both surfaced as observations, not errors (Design Principle 2). |
| search_chainsC | Search chains by entity, status, session type, date range. |
| list_chainsA | List all active chains (lightweight summary view). |
| search_ticketsC | Search tickets by type, entity, priority, status. |
| list_ticketsB | List all open tickets. |
| get_dashboardA | Aggregate view: active chains, open tickets, capacity summary, alerts. |
| check_chain_healthB | Detect stagnant/forgotten chains. Always active regardless of capacity_tracking. |
| record_session_declarationC | Write Session Declaration to current chain link. |
| record_handoffB | Write session-end handoff to chain link and data directory. Captures decisions, files changed, open threads, emotional context, and next-session recommendation. |
| record_gate_skipC | Log session-type leapfrog in chain metadata (Design Principle 1). Partner flags, explains cost, asks — never refuses. The skip is recorded to enable pattern detection over time. |
| record_catch_eventC | Log Catch firing with qualitative capture. |
| cmd_new_ticketB | Create a new ticket. Generic — human specifies everything. If the ticket type triggers Lockstep threshold (not maintenance), returns a prompt suggesting chain creation. The Partner handles the conversational follow-up. |
| cmd_new_initiativeB | Create initiative: ticket + full-funnel chain + discovery declaration. |
| cmd_enhancementB | Create enhancement: ticket + chain + planning declaration. |
| cmd_refactorB | Create refactor: ticket + chain + architecture declaration. |
| cmd_bug_fixB | Create bug-fix ticket. Optionally creates chain. |
Prompts
Interactive templates invoked by user choice
| Name | Description |
|---|---|
No prompts | |
Resources
Contextual data attached and managed by the client
| Name | Description |
|---|---|
No resources | |
TDQS
Scored across 42 tools
Several tools have overlapping retrieval or lifecycle roles: list_tickets/search_tickets, create_ticket/cmd_new_ticket, read_chain/get_chain_status/check_chain_health, and branch_chain/spawn_child_chain can be confused. Descriptions differentiate most cases, but an agent must read carefully to choose correctly.
All names use snake_case with a mostly consistent verb_noun pattern. Retrieval verbs are mixed (read_/get_/list_) and the cmd_* family uses a distinct prefix convention, but the set remains readable and predictable.
42 tools is well above the typical 3-15 sweet spot and exceeds the 25+ heavy threshold. Many lifecycle and command variants could be consolidated without losing core capability.
The surface covers chain/ticket CRUD, linking, promotion, capacity tracking, dashboards, session declarations/handoffs, and command shortcuts. Gaps include no explicit delete/reopen operations and limited direct editing of existing chain links, but core workflows are covered.