LogNexus
OfficialProvides a Git-backed knowledge graph and workflow: creates task branches, atomic task-scoped commits with trailers, attaches Git Notes under refs/notes/lognexus without changing commit SHAs, reconstructs branch timelines, and audits review-gate separation.
Integrates with GitHub issues and pull requests: turns plans into structured issues with subtasks, updates issue progress from commits, and compiles commit/discovery history into PR journey timelines for review.
LogNexus
What is LogNexus?
As AI coding agents take on complex engineering tasks across different IDEs, they suffer from a fundamental failure mode: cognitive amnesia. Between conversation resets, context compactations, model handoffs, and unexpected bugs, the why behind design decisions, discarded alternatives, and technical discoveries vanishes.
LogNexus transforms Git and GitHub into a persistent, traceable knowledge graph. It is a 100% generic, model-agnostic and editor-agnostic framework that operates directly inside your native AI development environments:
Clients: Claude Code, Cursor, Codex, Google Antigravity, Kimi Code, VS Code, Zed.
Models: Anthropic Claude (Opus, Sonnet, Haiku), OpenAI (o3, o1, GPT-4o), Google Gemini (2.5/3.8 Pro & Flash), DeepSeek (R1, V3, Chat).
Issues (Why & Goals) ──▶ Branches (Task Scopes) ──▶ Commits (Context & Diffs) ──▶ PR (Timeline & Review)
▲ │
└─────────────────────── Git-Backed Knowledge Graph ──────────────────────────────┘Framework, Not an API Proxy: LogNexus never intercepts network calls or wraps vendor APIs. Your models remain inside their native IDEs with full access to editor buffers, interactive diff viewers, terminals, MCP servers, and local tools.
Related MCP server: total-agent-memory
Key Features
Universal Multi-Model Support: Native cognitive guidelines and prompt specifications for Anthropic Claude, OpenAI, Google Gemini, DeepSeek, and Kimi K2.7 Code.
Universal Client Compatibility: Drop-in support for Claude Code, Cursor, Codex, Google Antigravity, and Kimi Code / VS Code.
Atomic Commit Engine (
lognexus commit& MCPlognexus_commit): Validates subtask file contracts, verifies reviewer separation, injects authorship trailers, commits changes, marks subtasks completed, and attaches Git Notes in a single ~0.15s execution.Cross-Model Review Gates: Non-negotiable review separation (
Authored-by:vsReviewed-by:) enforced both at pre-flight note attachment time and during branch audits. No model merges its own code without independent verification from another model family.Contract-First Subtasks & Alphanumeric Tickets: Tasks are bounded by strict decision budgets, file allowlists, and stop conditions—supporting both GitHub issues (
feat(#42/T1)) and Jira/Linear ticket schemes (feat(SLM-201/T1)).Persistent State & Session Recovery: Local session state engine (
.lognexus/state.json) prevents amnesia across context compactations and conversation resets, retaining completed subtask metadata through the closing commit.Git Notes Engine (Quiet Mode /
git-aiv3): Attaches structured session payloads and contracts to commits underrefs/notes/lognexuswithout changing commit SHAs.Native MCP Stdio Server (
lognexus mcp): Zero-dependency JSON-RPC 2.0 stdio server exposing LogNexus tools, live state resources, and prompts to Claude Desktop, Cursor, and any MCP client.Journey Timeline & Review Gate Audit: Reconstructs the complete branch journey into structured PR descriptions (
lognexus timeline --pr-body) and programmatically audits review gate separation (lognexus audit).Hidden Metadata Envelopes: HTML comments preserve machine-parseable state (
<!-- lognexus: kind: state ... -->) without cluttering human-readable markdown.Scaffolding & Health CLI (
@digital-lake/lognexus): Lightweight CLI for repository scaffolding (init), health diagnostics (doctor), and real-time status inspection (status).
Model-Tier Routing Matrix
LogNexus organizes development phases into three cognitive tiers. You can assign any model or native client to any tier according to your team's workflow and cost preferences:
Operational Tiers
Tier | Cognitive Role | Anthropic Claude | OpenAI | Google Gemini | DeepSeek | Primary Activities |
tier-1 (Reasoning) | Deep synthesis, architectural design, narrative review | Claude Opus 3.7 / 4.x | o3, o1, GPT-5 | Gemini 2.5 / 3.8 Pro | DeepSeek R1 | Brainstorming-to-issue planning, PR journey timeline synthesis, cross-model review sign-offs. |
tier-2 (Context & Triage) | Long context ingestion, discovery triage, structured mapping | Claude Sonnet | GPT-4.1, GPT-4o | Gemini Flash / Pro (1M context) | DeepSeek V3 | Large codebase exploration, discovery classification, knowledge retrieval. |
tier-3 (Execution) | Surgical implementation, template filling, fast execution | Claude Haiku | GPT-4o-mini | Gemini Flash | DeepSeek Chat (V3) | Subtask commits ( |
Example Deployment Setups
LogNexus adapts to your existing toolstack. Configure your advisory preferences in .lognexus/routing.md:
┌────────────────────────────────────────────────────────────────────────────────────────┐
│ POPULAR DEPLOYMENT SETUPS │
├────────────────────────────────────────────────────────────────────────────────────────┤
│ Setup A (Anthropic Pure): Claude Opus (t1) + Claude Sonnet (t2) + Claude Haiku (t3) │
│ Setup B (Google + DeepSeek): Gemini Pro (t1/t2) in Antigravity + DeepSeek Chat in Kimi │
│ Setup C (OpenAI + DeepSeek): OpenAI o3 (t1) in Cursor + DeepSeek Chat (t3) for code │
│ Setup D (Claude + OpenAI): Claude Opus (t1) for design + GPT-4o-mini (t3) for tasks │
└────────────────────────────────────────────────────────────────────────────────────────┘Quickstart & Golden Path
LogNexus coordinates the full issue-to-merge lifecycle through intuitive slash commands:
1. Capture the Plan
/lognexus planTransforms an exploratory brainstorm into a structured GitHub Issue with discrete subtasks (T1..Tn), verification criteria, and tier tags.
2. Start Work on a Clean Branch
/lognexus start <issue-number>Creates an ID-prefixed branch (issue/<id>-<slug>) from the default branch tip and logs a signed [lognexus/session-start] note.
3. Commit with Traceability
/lognexus commitStages changes and generates structured, task-scoped commits (feat(#42/T1): ...) paired with an issue progress update.
4. Synthesize the Pull Request
/lognexus prCompiles all commits, discoveries, discarded alternatives, and verification steps into a comprehensive Journey Timeline inside the PR description.
5. Cross-Model Review & Gate Verification
/lognexus reviewAn independent model inspects the PR diff, verifies task contracts, and signs off (Reviewed-by: <model>) before merge.
Installation & Setup
1. Scaffold Rules & Manage State with the CLI
Initialize .lognexus/ rules, templates, and routing configuration:
npx @digital-lake/lognexus initVerify your environment anytime:
npx @digital-lake/lognexus doctorInspect active branch and tier advisory:
npx @digital-lake/lognexus statusManage persistent agent state (.lognexus/state.json) and session recovery:
npx @digital-lake/lognexus state sync
npx @digital-lake/lognexus state show
npx @digital-lake/lognexus state set-task T1 "Add user schema"
npx @digital-lake/lognexus state finish-task T1Execute an Atomic Commit (validates subtask contract, enforces review-gate separation, injects trailers, commits, marks subtask completed, and attaches Git Note in a single ~0.15s call):
npx @digital-lake/lognexus commit -m "feat(#42/T1): add user schema" \
--author "gemini/flash (antigravity)" \
--reviewer "gemini/pro (lead-architect)" \
--finish-task
# Or read message from file (safe against Windows shell quote-stripping):
npx @digital-lake/lognexus commit -F commit-msg.txt --finish-taskQuiet Mode with Git Notes (refs/notes/lognexus, standard git-ai v3):
npx @digital-lake/lognexus note attach HEAD
npx @digital-lake/lognexus note show HEAD
npx @digital-lake/lognexus note push originJourney Timeline reconstruction and Review Gate audit:
npx @digital-lake/lognexus timeline main
npx @digital-lake/lognexus timeline main --pr-body
npx @digital-lake/lognexus audit mainOpt-in Telemetry, Stack Profiling & ROI Cost-Savings Engine:
# Check telemetry status (disabled by default, 0% overhead)
npx @digital-lake/lognexus telemetry status
# Enable local telemetry (stores metrics only in .lognexus/telemetry.json)
npx @digital-lake/lognexus telemetry enable
# Or enable anonymous community telemetry (explicit GDPR opt-in)
npx @digital-lake/lognexus telemetry enable --share --accept-terms
# Generate .lognexus/telemetry.md report with ROI metrics
npx @digital-lake/lognexus telemetry report
# Inspect the exact Zero-PII payload before sending
npx @digital-lake/lognexus telemetry inspect
# Disable telemetry immediately
npx @digital-lake/lognexus telemetry disableRead our strict Zero-PII policy in docs/TELEMETRY_PRIVACY.md.
2. Connect via Model Context Protocol (MCP)
LogNexus includes a native, lightweight JSON-RPC 2.0 stdio server (lognexus mcp) with zero external SDK dependencies. Connect it to Claude Desktop, Cursor, Google Antigravity, or any MCP-compliant client:
claude_desktop_config.json or Cursor MCP settings:
{
"mcpServers": {
"lognexus": {
"command": "npx",
"args": ["-y", "@digital-lake/lognexus", "mcp"]
}
}
}Or install automatically via Smithery:
npx -y @smithery/cli install @digital-lake/lognexus --client claudeExposed Capabilities:
Tools:
lognexus_status,lognexus_state_get,lognexus_state_sync,lognexus_state_set_task,lognexus_state_finish_task,lognexus_state_clear,lognexus_commit,lognexus_note_show,lognexus_note_attach,lognexus_timeline,lognexus_audit,lognexus_telemetryResources:
lognexus://state,lognexus://routingPrompts:
lognexus-plan,lognexus-review
3. Install Rules in Your Agent Environment
Claude Code:
claude plugin add digital-lake-ai/lognexusCursor / Codex / Agent Skills:
npx skills add digital-lake-ai/lognexusGoogle Antigravity: Active automatically via
skills/lognexus/SKILL.mdor workspace skills.Kimi Code / VS Code: Active via
.lognexus/workspace instructions and prompts.
⚡ Production Telemetry & Field Benchmark
LogNexus was battle-tested in a high-intensity production deployment governing the end-to-end engineering of Taranis—a deterministic static analysis CLI and AI migration skill operating over 250,000+ lines of legacy code with 22 AST/CFG rules (SPH-001..SPH-022).
╔══════════════════════════════════════════════════════════════════════════════════════════════╗
║ LOGNEXUS TELEMETRY HUD // PRODUCTION SWARM BENCHMARK (CASE STUDY: TARANIS) ║
╠═════════════════════════════════════════════╦════════════════════════════════════════════════╣
║ ▸ GOVERNED FEATURES 12 Issues (#1-#12) ║ ▸ ORPHAN / UNTRACKED COMMITS 0 (0.0%) ║
║ ▸ VERIFIED COMMITS 38 / 38 Signed ║ ▸ SELF-APPROVAL VIOLATIONS 0 Blocked ║
║ ▸ GIT NOTES ATTACHED 100% (git-ai v3) ║ ▸ SCOPE CREEP INCIDENTS 0 (Allowlist) ║
║ ▸ TEST SUITE INTEGRITY 536 Passed (100%) ║ ▸ ATOMIC COMMIT LATENCY ~0.15s / op ║
╚═════════════════════════════════════════════╩════════════════════════════════════════════════╝Multi-Model Swarm Performance Matrix
By enforcing Closed Delegation Contracts (allowedFiles, forbiddenFiles, decisionBudget: "none") and Cross-Model Review Gates, LogNexus coordinated three distinct AI model families in production without a single context leak or rogue commit:
Model Family | Assigned Tier | Production Strengths Observed | Optimal Contract Fit |
Google Antigravity / Gemini Pro |
| • Zero-drift multi-branch coordination• Strict review-gate enforcement ( | Architecture synthesis, closed contract authoring, cross-model code review, release governance. |
DeepSeek V3 / R1 |
| • Ultra-low latency & token cost• Exceptional at mathematical AST parsing, pushdown automata & CFG tokenization• Strict adherence to stop conditions when hitting out-of-scope test assertions | Algorithmic engines, deterministic parsers, isolated single-file modules ( |
Kimi K2.7 Code |
| • Massive context retention with zero file truncation on large modules ( | Large-context refactorings, multi-file rule catalogs, CI/CD matrices & standalone packaging. |
Key Takeaway: Contract-driven development paired with
refs/notes/lognexuscompletely eliminated scope creep by Tier-3 implementers while keeping the public Git commit graph 100% clean and human-readable.
Disambiguation
LogNexus by Digital Lake is an open-source development framework and Git memory system for AI agents. It is not affiliated with academic research papers on industrial log compression (e.g. ISSTA 2026).
Based on & Acknowledgments
LogNexus is an independent hard fork and continuation of shiplog, originally created by devallibus under the MIT License.
We extend our deep gratitude to devallibus for pioneering the concept of Git-as-knowledge-graph for AI development. LogNexus builds upon that foundation by:
Expanding the model ecosystem to provide first-class native support for Google Gemini, DeepSeek, and Kimi alongside Claude and OpenAI.
Formalizing the multi-model tier routing taxonomy and closed delegation contracts.
Introducing the repository scaffolding CLI, Atomic Commit Engine, and native MCP server (
@digital-lake/lognexus).Providing seamless backwards-compatibility for existing
.shiplogenvelopes and workflows.
Additional inspirations and patterns are derived from OrchestKit and Superpowers. Detailed license texts are preserved in the LICENSES/ directory and in NOTICE.md.
Did you find this project useful? 🤖⚡
Maintaining and evolving open-source agentic infrastructure takes time, dedication, and... quite a few AI tokens to power multi-model benchmarking, automated testing, and continuous architecture updates.
If LogNexus saved you time, prevented context amnesia in your workflows, and you'd like to help cover the API and compute costs to keep it evolving, consider fueling the AI with a token:
Every contribution goes straight into compute power, multi-model benchmarks, new MCP capabilities, and continuous improvements!
License
LogNexus is released under the MIT License.
Copyright (c) 2026 devallibus
Copyright (c) 2026 Digital Lake and LogNexus contributors.
Available Tools
12 toolslognexus_auditTraceability auditB
Audit the branch commits against the LogNexus review gate: commit format, Authored-by trailer, Git Note presence, subtask file contracts and reviewer/author separation.
| Name | Required | Description | Default |
|---|---|---|---|
| baseBranch | No | Base branch to compare against. Defaults to 'main' with origin fallback. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the concrete checks (commit format, Authored-by trailer, Git Note presence, subtask file contracts, reviewer/author separation), which is real behavioral value, but it never states that the operation is read-only/non-destructive, what the result looks like, or how failures are reported.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no filler; each listed item corresponds to a real check. Slightly dense but appropriately sized for the tool's scope.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema and no annotations, the description should say more about what the audit returns (pass/fail per check? report text?) and whether it mutates anything. The enumeration of checks helps, but return-shape and side-effect expectations remain unspecified.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Only one parameter, baseBranch, and schema coverage is 100%, with the default ('main' with origin fallback) already documented in the schema. The description adds nothing about how the branch is used in the comparison, so baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb ('Audit') plus resource ('branch commits against the LogNexus review gate') and an explicit enumeration of the five checks performed. An agent knows exactly what the tool inspects, though nothing distinguishes it from siblings like lognexus_status or lognexus_commit.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
No statement of when to run this audit, whether it is a pre-commit gate check or a post-hoc review, or how it relates to the many sibling tools (lognexus_commit, lognexus_status). Usage must be inferred entirely from the name and checklist.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_commitAtomic commitB
Atomically create a Git commit with conventional commit format, authorship trailers, subtask file contract validation, automatic task finishing, and Git Note attachment in a single operation.
| Name | Required | Description | Default |
|---|---|---|---|
| author | No | Author trailer identity, e.g. 'gemini/flash (antigravity)'. | |
| message | Yes | Conventional commit message, e.g. 'feat(#15/T1): add atomic commit CLI and tool'. | |
| reviewer | No | Optional reviewer trailer identity, e.g. 'gemini/pro (review-gate)'. | |
| allowEmpty | No | If true, allows creating an empty commit. | |
| finishTask | No | If true, marks the active subtask as completed in the persistent state. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations, so the description carries full burden. It helpfully discloses the side effects (contract validation, automatic task finishing, Git Note attachment) and the atomic framing, but omits failure/rollback semantics, permissions/auth needs, and how 'automatic task finishing' interacts with the finishTask boolean — a notable gap for a mutation tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence with no wasted preamble; every clause names a real behavior. It is dense but not padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
Covers the creation behavior well, but with no output schema and no annotations the description should say what the tool returns (e.g., commit SHA) and what happens when contract validation fails. For an atomic commit tool, those are material omissions.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so the schema already documents all five parameters with examples. The description adds context about trailers and validation but no parameter-specific detail beyond that; baseline 3 is appropriate when the schema does the heavy lifting.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb+resource ('create a Git commit') and enumerates the bundled effects (trailers, validation, task finishing, note attachment). The 'single operation' framing implicitly differentiates it from the granular siblings like lognexus_note_attach and lognexus_state_finish_task, though it never names them outright.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the phrase 'in a single operation' hints this replaces chaining note_attach + state_finish_task, but there is no explicit when-to-use, when-not-to-use, or prerequisite guidance. An agent must infer the routing decision from the bundled-effect list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_note_attachAttach Git NoteA
Attach the current LogNexus state as a Git Note (refs/notes/lognexus) to a commit. Defaults to HEAD.
| Name | Required | Description | Default |
|---|---|---|---|
| commitRef | No | Git commit reference (SHA, branch, tag or HEAD). Defaults to HEAD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the burden. It helpfully discloses the target ref namespace and the HEAD default, but omits whether an existing note is overwritten, whether git repo state is required, and what the call returns — meaningful gaps for a write operation.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two tight sentences, front-loaded with the action and the ref, followed by the default. Nothing is wasted and nothing critical is buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a one-parameter, no-annotation, no-output-schema tool, the description covers the core identity but leaves out overwrite semantics, permission/repo requirements, and note content — details an agent needs before invoking a mutating tool.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single commitRef parameter is fully documented in the schema, so the schema does the heavy lifting. The description only restates the HEAD default, adding no format examples or edge-case meaning.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Attach') and resource ('LogNexus state as a Git Note') plus the exact ref (refs/notes/lognexus). It implicitly distinguishes itself from the read-side sibling lognexus_note_show, though it never names it.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the agent can infer this writes a note to a commit, but nothing says when to prefer it over lognexus_commit, lognexus_note_show, or lognexus_state_sync, nor any prerequisites like being in a git repository.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_note_showShow Git NoteA
Read the LogNexus Git Note (refs/notes/lognexus) attached to a commit and return its parsed JSON payload. Defaults to HEAD.
| Name | Required | Description | Default |
|---|---|---|---|
| commitRef | No | Git commit reference (SHA, branch, tag or HEAD). Defaults to HEAD. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It discloses the non-obvious storage location (refs/notes/lognexus) and that the return value is a parsed JSON payload, which clearly frames this as a read. It does not say what happens when no note exists on the commit, whether the ref can be overridden, or what the payload's shape is.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
Two sentences with zero waste, front-loading the action and the exact ref being read before the default behavior. Nothing redundant or padded.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a read tool with no output schema and no annotations, the description should say more about what the parsed payload contains or how a missing note is surfaced. The ref location and default are covered, but the return contract remains opaque.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100% for the single commitRef parameter, so the schema already documents accepted forms (SHA, branch, tag, HEAD) and the default. The description's 'Defaults to HEAD' merely restates the schema; no additional semantics are contributed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Read'), a precisely named resource (the LogNexus Git Note under refs/notes/lognexus), and the result ('parsed JSON payload'). The read-only nature distinguishes it implicitly from the write-side sibling lognexus_note_attach, though it never names that sibling.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
'Defaults to HEAD' gives a usable calling convention, but the description never explains when to reach for this tool rather than a sibling like lognexus_note_attach, lognexus_state_get, or lognexus_timeline. Usage is implied by the verb 'Read' rather than spelled out.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_state_clearClear agent stateB
Reset the persistent LogNexus agent state to empty (equivalent to 'lognexus state clear').
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose the core behavioral effect: the persistent agent state is reset to empty. However, it omits whether the reset is irreversible, what else is affected, and whether any confirmation or permissions are required.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
The description is a single front-loaded sentence with no wasted words. It states the action, target, and resulting state efficiently.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a zero-parameter state-clearing tool without annotations or an output schema, the description covers the basic operation. It is still incomplete because it does not explain destructive implications, when to choose it over state_sync or state_get, or any side effects.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. The empty schema is fully described, and the description adds no param semantics because none are needed.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description states a specific verb and resource: reset the persistent LogNexus agent state. It also adds the outcome ('to empty'), which distinguishes it from sibling tools such as state_get, state_sync, and state_set_task, though it does not explicitly name those alternatives.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The description gives no guidance on when to use this tool versus siblings, when not to use it, or what prerequisites or safeguards apply. It merely states the operation.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_state_finish_taskFinish subtaskB
Mark a subtask as completed (equivalent to 'lognexus state finish-task ') and return the updated state.
| Name | Required | Description | Default |
|---|---|---|---|
| taskId | Yes | Subtask identifier, e.g. 'T1'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the behavioral burden: it correctly signals a mutation and helpfully discloses that the updated state is returned (relevant since there is no output schema). However, it says nothing about idempotency, error behavior for invalid or already-completed task IDs, or whether the parent task's state is affected.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One compact sentence with the action front-loaded and the return behavior second. The CLI-equivalent parenthetical is compact and aids routing rather than padding.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a single-parameter mutation it covers the essentials: what changes and what comes back. Missing are failure modes, idempotency, and any note on the parent task or state file, which matter more because no annotations exist to cover them.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100% and the single taskId parameter is documented with an example format ('T1'). The description's '<id>' reference matches the schema but adds no new semantics; baseline 3 is appropriate.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource ('Mark a subtask as completed') plus the side effect of returning updated state, so the agent knows exactly what it does. It does not explicitly differentiate itself from siblings like lognexus_state_set_task or lognexus_state_clear, which is the only gap.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The action implies when to use it (a subtask reaches completion), but there is no explicit when/when-not guidance and no mention of the alternatives in the sibling list. An agent must infer that set_task is for modifying fields and clear is for removal.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_state_getGet agent stateA
Return the persistent LogNexus agent state (.lognexus/state.json): active issue, current subtask, completed subtasks and last synchronization timestamp.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden. It does disclose what the tool exposes (active issue, current subtask, completed subtasks, last sync timestamp) and where that comes from, but says nothing about behavior when .lognexus/state.json does not yet exist (empty object, error, or defaults) or whether the read has side effects.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single front-loaded sentence that names the resource, its backing file, and the returned fields with zero filler.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
No output schema exists, so the description must describe the return value, and it enumerates the persisted fields adequately. The only material omission is the empty/missing-state behavior for a tool that is likely called before state is initialized.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Zero parameters, so the baseline is 4. The description correctly implies no inputs are needed to fetch the full state.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Specific verb+resource: returns the persistent agent state, naming the backing file (.lognexus/state.json) and the exact fields returned. It is clearly the read counterpart to state_set_task/state_sync/state_clear, though it does not name those siblings explicitly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is implied by the getter naming and the enumeration of persisted fields, but there is no explicit statement of when to call it versus lognexus_status or the state mutation siblings, and no prerequisites or exclusions are given.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_state_set_taskSet active subtaskA
Mark a subtask as in progress (equivalent to 'lognexus state set-task [title]') and return the updated state.
| Name | Required | Description | Default |
|---|---|---|---|
| title | No | Optional human-readable subtask title. | |
| taskId | Yes | Subtask identifier, e.g. 'T1'. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose that this is a mutation and that it returns the updated state, plus the CLI equivalent, but it never says what happens to a previously active subtask, whether the title overwrites an existing one, or what error conditions look like.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that leads with the action and packs the CLI equivalence into a parenthetical. Nothing is wasted and nothing important is buried.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-parameter state mutation with no annotations and no output schema, the description is minimally adequate: it says what changes and that state is returned. It omits the side effects on the prior active subtask and any indication of failure behavior, which an agent would need before calling it in a workflow.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, with taskId and title both documented in the schema (including title's optionality), so the baseline is 3. The description adds only the CLI signature hint '[id] [title]', which restates rather than extends schema semantics.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb and resource: mark a subtask as in progress, returning updated state. That distinguishes it implicitly from lognexus_state_finish_task and lognexus_state_get, but no sibling is named explicitly, so it falls short of a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The 'in progress' framing implies this is the tool to call when starting or resuming work on a subtask, but there is no explicit when-to-use or when-not guidance, and no pointer to finish_task/state_get for the adjacent operations.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_state_syncSync state from GitB
Synchronize the persistent state from the current Git branch and GitHub metadata, then return the updated state.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations are provided, so the description carries the full burden. It does disclose that the result is the updated state, but nothing about whether existing local state is overwritten, what happens on conflict with the remote, whether this mutates the working tree or commits anything, or what GitHub auth/network access is required. For a sync operation with write potential, these are material omissions.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the action and source of truth, ending with the return behavior. No filler. It could be marginally better structured by splitting the call-to-action from the return semantics, but nothing is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no annotations and no output schema, the description is the only source of behavioral information, and it omits side effects, conflict/merge behavior, idempotency, and required environment (Git repo, GitHub credentials). Given a state-mutating sync in a family of state tools, this leaves an agent unable to predict the outcome confidently.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so there is nothing for the description to disambiguate and the baseline is 4. The description does not need to elaborate on inputs beyond this.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb (synchronize) and a specific resource (persistent state), plus the sources (current Git branch and GitHub metadata) and that it returns the updated state. An agent can distinguish it from lognexus_state_get or lognexus_state_clear. It stops short of naming a sibling or explicit scope boundary, so not a 5.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no guidance on when this should be called instead of lognexus_state_get, lognexus_commit, or lognexus_status, and no prerequisites are stated. The only implied context is that a Git branch must be current, which the agent has to infer from the phrase 'current Git branch'.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_statusLogNexus project statusB
Inspect the current Git branch, whether the directory is a Git repository, the active issue, the routing mode and the recommended model tier.
| Name | Required | Description | Default |
|---|---|---|---|
No parameters | |||
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
No annotations exist, so the description carries the full burden. It implicitly conveys a read-only inspection and enumerates the returned fields, which is genuinely useful, but never explicitly states 'no side effects', whether it touches the filesystem/network, or what the response shape looks like. Adequate but short of what an unannotated tool warrants.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
One sentence, front-loaded with the verb and no filler. The list is long but each item is a distinct returned datum, so little is wasted.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
With no output schema, the description must convey return content, and it does so by naming five concrete fields. Missing only the explicit read-only guarantee and any note on failure when the directory is not a Git repository.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
The tool takes zero parameters, so the baseline is 4. The description instead spends its words itemizing the inspection targets, which is the useful analog for a no-arg tool.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
Starts with a specific verb ('Inspect') and enumerates exactly which fields are surfaced: Git branch, repo detection, active issue, routing mode, model tier. This is far more concrete than a name restatement. It does not, however, contrast itself with the similarly named sibling lognexus_state_get, so an agent has no signal on how they differ.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
There is no statement of when to call this versus lognexus_state_get, lognexus_state_sync, or lognexus_timeline, which all read adjacent state. Usage must be inferred entirely from the field list.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_telemetryOpt-in telemetry & ROI report engineB
Inspect telemetry status, enable local or anonymous community telemetry, disable tracking, inspect zero-PII payload, generate telemetry markdown reports, or clear metrics store.
| Name | Required | Description | Default |
|---|---|---|---|
| share | No | When action is 'enable', set to true to enable anonymous community telemetry. | |
| action | No | Telemetry action to perform. Defaults to 'status'. | |
| outputPath | No | Target file path when generating report (defaults to .lognexus/telemetry.md). | |
| acceptTerms | No | Explicit acceptance of telemetry terms (required when share is true). |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden, and it does add real context: 'zero-PII payload', 'anonymous community' vs 'local' telemetry. However, it never states that 'clear' irreversibly destroys the metrics store, that 'report' writes a file to disk, or that 'enable' with share=true requires acceptTerms — all material behaviors for a tool that includes a destructive action.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single sentence that front-loads the most-used mode ('Inspect telemetry status') and then lists the remaining actions compactly with zero filler. The 'or'-chained enumeration is slightly list-like but every clause maps to a real enum value.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a six-action dispatcher with no annotations and no output schema, the description covers all action names but leaves gaps: nothing about what status/inspect/report actually return, nothing about the terminal/irreversible nature of 'clear', and no prerequisites for the anonymous-sharing path. Adequate to call correctly, but not complete.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema description coverage is 100%, so each of the four parameters is already documented in the input schema, including the share/acceptTerms coupling and the outputPath default. The description adds no parameter-level meaning beyond that, so the baseline 3 applies.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
The description enumerates all six actions with concrete verbs and objects ('inspect telemetry status', 'generate telemetry markdown reports', 'clear metrics store'), so the tool's scope is unambiguous. It never names or contrasts with a sibling tool, but 'telemetry' is a distinctive domain no sibling covers, making overlap unlikely.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
The action list implies what each mode does, but there is no when-to-use / when-not-to-use guidance, no explicstatement of ordering or prerequisites, and no hint about which action an agent should pick by default (the schema, not the description, says it defaults to 'status'). Usage is inferable but not directed.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
lognexus_timelineJourney TimelineB
Reconstruct the branch Journey Timeline against a base branch: commit list enriched with Git Notes, subtask IDs, tiers and Authored-by/Reviewed-by trailers, rendered as a Markdown table, JSON or a PR body draft.
| Name | Required | Description | Default |
|---|---|---|---|
| format | No | Output format. Defaults to 'table'. | |
| baseBranch | No | Base branch to compare against. Defaults to 'main' with origin fallback. |
TDQS
Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?
With no annotations, the description carries the full burden; 'Reconstruct' implies a read-only aggregation, and the enumeration of enrichment data and output formats is genuinely informative. However, it doesn't state prerequisites (git repo state, whether notes must already exist), whether it touches the remote, or what happens when no notes/trailers exist — gaps that matter for a composite read tool.
Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.
Is the description appropriately sized, front-loaded, and free of redundancy?
A single dense sentence that front-loads the core action and then the data sources and output formats. It is efficient for the amount of information conveyed, though packing four enrichment sources into a clause makes it slightly hard to scan.
Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.
Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?
For a two-optional-parameter read tool with no output schema and no annotations, the description covers purpose and formatting options adequately. It leaves unclear what the JSON/table payload contains structurally and what preconditions or failure modes exist, which a richer description should have supplied.
Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.
Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?
Schema coverage is 100%, so both parameters are already documented, and the description only restates the format choices and base-branch comparison. It adds minor semantic value by clarifying that 'pr-body' yields a pull-request draft, but offers no extra detail on branch resolution or format behavior beyond the schema.
Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.
Does the description clearly state what the tool does and how it differs from similar tools?
States a specific verb ('Reconstruct') and a well-defined resource ('branch Journey Timeline against a base branch') and enumerates the enrichment sources (Git Notes, subtask IDs, tiers, trailers) plus output formats. It is clearly distinguishable from generic siblings like lognexus_audit or lognexus_note_show, though it never names those alternatives directly.
Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.
Does the description explain when to use this tool, when not to, or what alternatives exist?
Usage is only implied: the 'against a base branch' framing suggests PR/release review scenarios, but there is no explicit when-to-use, when-not-to-use, or pointer to a sibling such as lognexus_audit or lognexus_note_show. An agent must infer the routing decision.
Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
12 tool updates
v0.1.0- First observed
lognexus_audit - First observed
lognexus_commit - First observed
lognexus_note_attach - First observed
lognexus_note_show - First observed
lognexus_state_clear - First observed
lognexus_state_finish_task - First observed
lognexus_state_get - First observed
lognexus_state_set_task - First observed
lognexus_state_sync - First observed
lognexus_status - First observed
lognexus_telemetry - First observed
lognexus_timeline
TDQS
Scored across 12 tools
Most tools map to a clearly distinct resource+action (state get/clear/sync, note show/attach, commit, audit, timeline, telemetry). Two mild overlaps exist: lognexus_state_get vs lognexus_state_sync (both return updated state, differing only in whether they re-read Git/GitHub) and lognexus_commit vs lognexus_note_attach, since commit already attaches a Git Note automatically.
All twelve names share the lognexus_ prefix and snake_case, with a predictable <namespace>_<action> pattern for state_* and note_* families. Minor deviation: commit, status, timeline, audit and telemetry are flat prefix+noun/verb without a resource namespace, which is a small inconsistency rather than a readability problem.
Twelve tools sit squarely in the well-scoped 3-15 range. Each one maps to a concrete workflow step (read/reset/sync state, task transitions, notes, commit, audit, timeline, telemetry) with no visible filler.
The state lifecycle (get, sync, set-task, finish-task, clear), note lifecycle (show/attach) and commit/audit/timeline reporting are covered, so core workflows have no dead ends. Gaps remain around assigning the active issue explicitly, recording a Reviewed-by trailer (audited but never written), and detaching a stale note — all workable around via raw git.
Maintenance
Related MCP Connectors
Persistent AI memory shared across Claude, ChatGPT, coding agents, and compatible MCP clients.
Give your AI agent persistent, governed memory for every project. At task start it recalls the approved decisions, conventions, risks and architecture (semantic search, ranked by importance); at close it proposes what was learned as typed memories that you review and approve — governance, not a notes dump. Agents propose, humans govern: edits go back to pending and deletion is human-only by design. Connect Claude Code, Cursor, Claude Desktop or any MCP client in two minutes with just your API key — hosted (nothing to install) or locally via `uvx solucortex-mcp`. Built by SoluAI and dogfooded daily: SoluCortex is developed using its own living memory.
Persistent memory for AI agents across Claude, ChatGPT and any MCP client.
- ContexelOAuthai.contexel
Shared AI memory. ChatGPT, Claude, Cursor and any MCP app read and write the same memory.
Related MCP Servers
- AlicenseAqualityCmaintenancePersistent memory MCP server for Claude Code, Cursor, and GitHub Copilot. Semantic search, Git sync, project-based, Persistent memory MCP server for Claude Code, Cursor, and GitHub Copilot. Semantic search, Git sync, project-based organization, and team collaboration via Model Context Protocol.11415 npm2MIT
- AlicenseBqualityAmaintenancePersistent, local memory for AI coding agents that learns how you work, not just what you said. Supports Claude Code, Codex CLI, Cursor, and any MCP client.79235 PyPI73MIT
- AlicenseAqualityBmaintenanceShared, versioned memory for your agents across Claude Code, Cursor, Kiro and Grok. One MCP server, sourced answers, full history.3MIT

Memcellofficial
AlicenseNot gradedqualityFmaintenanceLiving memory for AI coding agents (Claude Code, Cursor, Copilot, Codex). Cross-vendor persistent memory, decision recall, and outcome calibration via MCP and hooks.247 npmApache 2.0