Skip to content
Back to skills

Using Compass

ASecurity

Use when a user or another skill directs the agent to use a named compass.

  • 4 stars
  • 0 votes
  • 0 copies
  • 1 view
  • Added September 2, 2026
ai-agents

Works with

  • terminal
  • mcp

Security analysis

A100/100

Pro scans all 4 files and shows the line behind each finding

Scanned September 2, 2026

npx -y skills add MoeenNehzati/famulus --skill using-compass --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Using Compass?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Using Compass
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/moeennehzati-using-compass/badge)](https://www.skillsdirectory.com/skills/moeennehzati-using-compass)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: using-compass
description: Use when a user or another skill directs the agent to use a named compass.
---

<!-- BEGIN BLUEPRINT INTERFACES -->
> Generated from `blueprint.yaml`. Do not edit this block by hand.

Instruction Interfaces:

These are LLM-readable instruction surfaces. Read and follow them directly; do not invoke the MCP server for them.
- `rutter.interface.dispenser@5` — Construct one VoyageDispenser from self-describing modes, unique run initialization, optionally prefix-filtered ID enumeration, Voyage resolution, and Voyage-or-run release callbacks.
<!-- END BLUEPRINT INTERFACES -->
# Using Compass

`Use compass on <rutter-name>`.

Use one invoker-provided authorized `VoyageDispenser` process binding supplied
with the activation request. If it is absent, report a public-interface gap and
stop.

First invoke `help` and follow the returned operating contract. If the activation
supplies the advertised mode arguments, invoke `modes`, then `initiate` exactly
once to create a fresh run, passing the optional run prefix only when supplied.
Use only the IDs returned by `initiate`. If initialization inputs are absent,
report a public-interface gap instead of inventing them. Act as the
controller: assign exactly one agent to each returned `voyage_id`, giving it the
dispenser binding and its assigned `voyage_id`.
Agents must not share or switch Voyage IDs. Do not start any Voyage agent until
every returned ID has an assigned agent. If an independent agent cannot be
assigned to every Voyage, report a public-interface gap and stop.

Each Voyage agent invokes `status` only with its assigned ID. For a ready
Message, it performs the instructions and payload, produces a response
satisfying the optional response schema, invokes `validate`, and invokes
`advance` only after validation succeeds. For ready automatic work, it invokes
`advance` without a response. It reads a fresh `status` after every successful
advance and stops on terminal, fault, uncertain, malformed, or unknown status.
After reading and retaining a terminal result, it invokes `release` for its
assigned Voyage unless there is an explicit reason to preserve that Voyage's
working directory. It reports that reason when it preserves the directory and
never releases a ready, faulted, uncertain, malformed, or unknown Voyage.
The controller must wait for every Voyage agent to stop before finishing.

Files in this skill

  • SKILL.md2.3 KB
  • blueprint.yaml3.7 KB
  • blueprints/gateway.yaml5.9 KB
  • tests/test_using_compass_instructions.py4.5 KB

Attribution

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments

Loading comments…