Skip to main content
Glama

topos_generate_depgraph

Generate the .gitnexus dependency graph via GitNexus to enable structural quality analysis. Skips regeneration when the graph is current; forces a rebuild with the force option.

Instructions

Generate the .gitnexus dependency graph via GitNexus (side-effecting). Ensures the graph by default: no-ops when current, otherwise runs gitnexus analyze. force=true always regenerates.

Input Schema

TableJSON Schema
NameRequiredDescriptionDefault
forceNoRegenerate even when current.
directoryNoRepo root to analyze (default: MCP file root / process project root).
gitnexus_dirNo`.gitnexus` store under the project root.

Schema Changelog

Changes observed during successful MCP inspections.

  1. Changed2 schema fields changedv0.5.0
    • changedInput schema / properties / directory / description
      Previous value: -"Repo root to analyze (default: derived from `gitnexus_dir` when set,\notherwise the MCP file root). Explicit `directory` wins over derivation."New value: +"Repo root to analyze (default: MCP file root / process project root)."
    • changedInput schema / properties / gitnexus_dir / description
      Previous value: -"`.gitnexus` store under the MCP file root. When `directory` is omitted,\nthe analyze root is the parent of this path — same derivation\n`topos_depgraph_status` uses — so status → generate stay aligned."New value: +"`.gitnexus` store under the project root."
  2. Changed2 schema fields changedv0.4.4
    • changedInput schema / properties / directory / description
      Previous value: -"Repo root (default: MCP file root)."New value: +"Repo root to analyze (default: derived from `gitnexus_dir` when set,\notherwise the MCP file root). Explicit `directory` wins over derivation."
    • addedInput schema / properties / gitnexus_dir
      Added value: +{
      +  "default": null,
      +  "description": "`.gitnexus` store under the MCP file root. When `directory` is omitted,\nthe analyze root is the parent of this path — same derivation\n`topos_depgraph_status` uses — so status → generate stay aligned.",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
  3. Changed5 schema fields changedv0.4.0
    • addedInput schema / $schema
      Added value: +"https://json-schema.org/draft/2020-12/schema"
    • addedInput schema / properties / directory
      Added value: +{
      +  "default": null,
      +  "description": "Repo root (default: MCP file root).",
      +  "type": [
      +    "string",
      +    "null"
      +  ]
      +}
    • addedInput schema / properties / force
      Added value: +{
      +  "default": false,
      +  "description": "Regenerate even when current.",
      +  "type": "boolean"
      +}
    • removedInput schema / properties / params
      Removed value: -{
      -  "additionalProperties": false,
      -  "description": "Arguments for ``topos_generate_depgraph`` (side-effecting).",
      -  "properties": {
      -    "directory": {
      -      "anyOf": [
      -        {
      -          "type": "string"
      -        },
      -        {
      -          "type": "null"
      -        }
      -      ],
      -      "default": null,
      -      "description": "Repo root (default: MCP file root)."
      -    },
      -    "force": {
      -      "default": false,
      -      "description": "Regenerate even when current.",
      -      "type": "boolean"
      -    }
      -  },
      -  "type": "object"
      -}
    • removedInput schema / required
      Removed value: -[
      -  "params"
      -]
  4. Changed2 schema fields changedv0.3.10
    • changedInput schema / properties / params / properties / directory / description
      Previous value: -"Repository root to analyze (default: the MCP file root)."New value: +"Repo root (default: MCP file root)."
    • addedInput schema / properties / params / properties / force
      Added value: +{
      +  "default": false,
      +  "description": "Regenerate even when current.",
      +  "type": "boolean"
      +}
  5. First observedv0.3.6

TDQS

A4.4/5.0
Behavior5/5

Does the description disclose side effects, auth requirements, rate limits, or destructive behavior?

Discloses side-effecting nature, the underlying `gitnexus analyze` command, conditional no-op behavior, and force regeneration. Annotations only provide generic hints (readOnlyHint=false, idempotentHint=false); the description adds meaningful behavioral context beyond those.

Agents need to know what a tool does to the world before calling it. Descriptions should go beyond structured annotations to explain consequences.

Conciseness5/5

Is the description appropriately sized, front-loaded, and free of redundancy?

Two sentences, front-loaded with purpose and side-effect. The second sentence efficiently explains no-op and force behavior. No wasted words.

Shorter descriptions cost fewer tokens and are easier for agents to parse. Every sentence should earn its place.

Completeness4/5

Given the tool's complexity, does the description cover enough for an agent to succeed on first attempt?

Covers the tool's purpose, side effects, default behavior, and force parameter. No output schema exists, but for a side-effecting graph generation tool this is adequate for an agent to select and invoke correctly.

Complex tools with many parameters or behaviors need more documentation. Simple tools need less. This dimension scales expectations accordingly.

Parameters3/5

Does the description clarify parameter syntax, constraints, interactions, or defaults beyond what the schema provides?

Schema coverage is 100% and every parameter (force, directory, gitnexus_dir) already has a clear description. The description restates force=true behavior but adds no new parameter semantics beyond the schema.

Input schemas describe structure but not intent. Descriptions should explain non-obvious parameter relationships and valid value ranges.

Purpose5/5

Does the description clearly state what the tool does and how it differs from similar tools?

Clearly states the specific action: generate the `.gitnexus` dependency graph via GitNexus. This distinguishes it from sibling tools like `topos_depgraph_status` (status check) and `topos_generate_graphify_graph` (different graph type).

Agents choose between tools based on descriptions. A clear purpose with a specific verb and resource helps agents select the right tool.

Usage Guidelines4/5

Does the description explain when to use this tool, when not to, or what alternatives exist?

Provides clear context: default behavior ensures the graph and no-ops when current, which implies when to use it (to guarantee graph existence). Does not explicitly name alternatives or exclusions, but the context is sufficient for selection.

Agents often have multiple tools that could apply. Explicit usage guidance like "use X instead of Y when Z" prevents misuse.