magus v0.4.2 is out. See what's new
¶ View generated markdown
1 min read

magus-path

Connect two knowledge-graph nodes: the shortest chain of edges between them

Synopsis

magus path <a> <b> [flags]

Description

path connects two nodes: the shortest chain of edges between them (edges walked in either direction), with each hop's relation.

It answers the question the other two verbs cannot: not "what is this" or "what does this touch", but "how are these two related at all". That is the question worth asking when a change to one thing breaks a seemingly unrelated other, or when you suspect two projects are coupled and want the chain rather than a hunch. Each hop names its relation, so the answer is a mechanism you can check and not just a claim that a connection exists.

Edges are walked in EITHER direction, which is what makes it useful and is also its main caveat: a returned chain proves the two nodes are connected in the graph, not that influence flows from one to the other. Read the hop relations to see which way each link actually points.

Each argument is a node ID (target:pkg/foo:build) or a name that resolves to one. The graph is cache-backed under <cache>/knowledge; --refresh forces a full rebuild.

Options

--global
Resolve endpoints across the workspaces registered in config (knowledge.workspaces)
--refresh
Force a full graph rebuild before pathfinding

Examples

How are two projects related

magus path pkg/api pkg/web

From a spell to a diagnostic

magus path spell:go MGS3003

Between two targets by ID

magus path target:pkg/api:build target:pkg/web:test

As a record

magus path pkg/api pkg/web -o json

See Also

magus(1), magus-ls(1), magus-describe(1), magus-run(1), magus-x(1), magus-where(1), magus-affected(1), magus-graph(1), magus-query(1), magus-explain(1), magus-refs(1), magus-watch(1), magus-events(1), magus-status(1), magus-clean(1), magus-vcs(1), magus-doctor(1), magus-config(1), magus-session(1), magus-memory(1), magus-notes(1), magus-diff(1), magus-server(1), magus-mcp(1), magus-buzz(1), magus-completion(1), magus-man(1), magus-init(1), magus-agent(1), magus-self(1), magus-version(1)

generatedinternal/cli/registry.goclimagus pathpathknowledge graphshortest pathrelationshipcoupling
Last updated (4f8cc295)
Earlier changes on this page (7)

Full history ↗ · Blame source ↗

Glossary

Workspace

The magus root directory that owns a set of projects and shared config; the unit magus operates over. See workspace.

Project

A directory magus recognizes as a unit of work (it has a magusfile); the unit of caching, scheduling, and dependency tracking. See workspace.

Target

A named operation (build, test, ...) you invoke with magus run <target>; it may compose a spell's tool-native operations and depend on other targets. See targets.

Op

A single tool-native command a target composes (long form: operation); the middle of the work hierarchy (Spell to Op to Target). See operations.

Spell

A language/runtime adapter (e.g. go, md) that maps generic targets onto a toolchain's real commands. See spells.

Buzz

The language magusfiles are written in (the .buzz engine). See engines.

Cache

The content-addressed store magus consults before running a target, so unchanged work is skipped. See cache.

Affected

The set of projects touched by a change; magus affected <target> runs a target only over them. See affected.

Knowledge graph

The queryable graph of a workspace's spells, targets, docs, and code relationships; query it with magus query/explain/path. See knowledge.

MAGUS.md

The committed routing index at a workspace root, regenerated from the knowledge graph: it lists every node and points at the exact query for a given question, so it is the entry point an agent reads first. See knowledge.

Session

One magus process's recorded facts - the targets it finished, their outcomes, and the lease it acted as - kept in a repo-scoped store every worktree shares. magus session lists them; the store prunes itself by last-fact age.

Conventions

This page uses none of the site's convention markers. The full set is on the conventions page.