Getting it into your agent
This one installs as part of its plugin. Adding the marketplace and installing the plugin brings it with everything else the plugin ships.
/plugin marketplace add costajohnt/oss-autopilot/plugin install oss-autopilotWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/commands/costajohnt/oss-autopilot/oss-dashboard)<a href="https://agentmods.dev/commands/costajohnt/oss-autopilot/oss-dashboard"><img src="https://agentmods.dev/badge/commands/costajohnt/oss-autopilot/oss-dashboard/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/commands/costajohnt/oss-autopilot/oss-dashboard"><img src="https://agentmods.dev/badge/commands/costajohnt/oss-autopilot/oss-dashboard.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00014 | $0.01527 |
| Opus 5 | $0.00007 | $0.00763 |
| Sonnet 5 | $0.00003 | $0.00305 |
| Haiku 4.5 | $0.00001 | $0.00153 |
Grade A, and why
oss-dashboard scanned grade A with 1 finding against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 9d ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Makes network callslowCapability
Not a fault in itself. Listed so you know the mod talks to something, and to what.
if curl -sf "http://127.0.0.1:$PORT/api/data" -o /dev/null 2>/dev/null; then How it starts
The opening of the file, as written. The whole thing — 110 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Open Dashboard
Launch the interactive OSS Autopilot dashboard SPA. If a server is already running, opens it directly. Otherwise, builds (if needed) and starts the server as a background process.
Step 1: Build and Launch
Display this loading message before running any tool calls:
Opening dashboard...
Then run everything in a single bash call:
CLI_BUNDLE="${CLAUDE_PLUGIN_ROOT}/packages/core/dist/cli.bundle.cjs"
# Rebuild CLI if needed
if [ ! -f "${CLI_BUNDLE}" ] || [ -n "$(find "${CLAUDE_PLUGIN_ROOT}/packages/core/src" "${CLAUDE_PLUGIN_ROOT}/packages/core/package.json" "${CLAUDE_PLUGIN_ROOT}/packages/core/tsconfig.json" -newer "${CLI_BUNDLE}" -print -quit 2>/dev/null)" ]; then
if ! BUILD_LOG=$(cd "${CLAUDE_PLUGIN_ROOT}/packages/core" && npm install --silent 2>&1 && npm run bundle --silent 2>&1); then
echo '{"error":"CLI build failed","details":"'"$(echo "$BUILD_LOG" | tail -5 | tr '\n' ' ')"'"}'; exit 1
fi
fi
# Build dashboard SPA if missing or stale
DASHBOARD_INDEX="${CLAUDE_PLUGIN_ROOT}/packages/dashboard/dist/index.html"
DASHBOARD_PKG="${CLAUDE_PLUGIN_ROOT}/packages/dashboard/package.json"
if [ -f "${DASHBOARD_PKG}" ] && { [ ! -f "${DASHBOARD_INDEX}" ] || [ -n "$(find "${CLAUDE_PLUGIN_ROOT}/packages/dashboard/src" "${DASHBOARD_PKG}" "${CLAUDE_PLUGIN_ROOT}/packages/dashboard/vite.config.ts" "${CLAUDE_PLUGIN_ROOT}/packages/dashboard/tsconfig.json" -newer "${DASHBOARD_INDEX}" -print -quit 2>/dev/null)" ]; }; then
if command -v pnpm &>/dev/null; then
(cd "${CLAUDE_PLUGIN_ROOT}" && pnpm install --silent && pnpm --silent --filter @oss-autopilot/core run build && pnpm --silent --filter @oss-autopilot/dashboard run build) >/tmp/oss-dashboard-build.log 2>&1 || true
else
(cd "${CLAUDE_PLUGIN_ROOT}/packages/dashboard" && npm install --silent && npm run build) >/tmp/oss-dashboard-build.log 2>&1 || true
fi
fi
# Pick a platform-appropriate browser opener. $BROWSER wins when set.
open_url() {
local url="$1"
if [ -n "$BROWSER" ] && command -v "$BROWSER" >/dev/null 2>&1; then
"$BROWSER" "$url" >/dev/null 2>&1 &
elif command -v open >/dev/null 2>&1; then # macOS
open "$url" >/dev/null 2>&1 &
elif command -v xdg-open >/dev/null 2>&1; then # Linux
xdg-open "$url" >/dev/null 2>&1 &
elif command -v wslview >/dev/null 2>&1; then # WSL
wslview "$url" >/dev/null 2>&1 &
elif command -v cmd.exe >/dev/null 2>&1; then # Git Bash / Cygwin on Windows
cmd.exe /c start "" "$url" >/dev/null 2>&1 &
else
return 1
fi
}
# Dashboard logs go here so crashes are debuggable instead of silently lost.
LOG_DIR="$HOME/.oss-autopilot"
mkdir -p "$LOG_DIR"
LOG_FILE="$LOG_DIR/dashboard.log"
# Check if dashboard server is already running via PID file
PID_FILE="$HOME/.oss-autopilot/dashboard-server.pid"
if [ -f "$PID_FILE" ]; then
PORT=$(node -e "try{console.log(JSON.parse(require('fs').readFileSync('$PID_FILE','utf-8')).port)}catch(e){console.log('')}")
PID=$(node -e "try{console.log(JSON.parse(require('fs').readFileSync('$PID_FILE','utf-8')).pid)}catch(e){console.log('')}")
if [ -n "$PORT" ] && [ -n "$PID" ] && kill -0 "$PID" 2>/dev/null; then
# Health check
if curl -sf "http://127.0.0.1:$PORT/api/data" -o /dev/null 2>/dev/null; then
open_url "http://oss.localhost:$PORT" || true
echo '{"status":"already_running","url":"http://oss.localhost:'"$PORT"'","logFile":"'"$LOG_FILE"'"}'
exit 0
fi
fi
fi
# Launch server in background, routing stderr/stdout to a log file for debugging.
GITHUB_TOKEN=$(gh auth token 2>/dev/null || echo "$GITHUB_TOKEN")
export GITHUB_TOKEN
{ echo "--- dashboard server started $(date -u +%FT%TZ) ---"; } >>"$LOG_FILE" 2>&1
nohup node "${CLI_BUNDLE}" dashboard serve --port 3000 --no-open >>"$LOG_FILE" 2>&1 &
# Wait for server to start (poll PID file + health check)
for i in $(seq 1 25); do
sleep 0.2
if [ -f "$PID_FILE" ]; then
PORT=$(node -e "try{console.log(JSON.parse(require('fs').readFileSync('$PID_FILE','utf-8')).port)}catch(e){console.log('')}")
if [ -n "$PORT" ] && curl -sf "http://127.0.0.1:$PORT/api/data" -o /dev/null 2>/dev/null; then
open_url "http://oss.localhost:$PORT" || true
echo '{"status":"launched","url":"http://oss.localhost:'"$PORT"'","logFile":"'"$LOG_FILE"'"}'
exit 0
fi
fi
done
echo '{"error":"Dashboard server failed to start within 5 seconds","logFile":"'"$LOG_FILE"'"}'
exit 1
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 9d ago First seen · 110 lines · 14 tokens per session scan A b11bd0b22ec9
oss-dashboard is a command published in the GitHub repository costajohnt/oss-autopilot (13 stars, last pushed 2d ago), licensed MIT. It adds 14 tokens to every session and 1,527 once invoked, about $0.0001 per session on Opus 5. A static security scan graded it A with 1 finding (makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.
Other commands, from other repositories
devbox-entrypoint
Context: runloop resumes a devbox by re-running the same entrypoint script, which invokes cn serve --id .... Because the entrypoint always replays, the CLI must avoid duplicating state on restart.
check-ux
Walk the key flows in a real browser at mobile and desktop viewports, then a task per friction point.
submit-to-directories
Submit the product to the directory catalog in /.darkflow/directories.csv through a real browser, and track what has already been submitted.
dev-server
Manage dev server - start, stop, logs, list.
atomic-plan
Write a design doc (concepts, business rules, approaches) and a checkpoint-table spec (contract) for non-trivial work; inline spec only for trivial. Gauges triviality; loops spec authoring with subagents. Human-facing artifact, Mermaid diagrams allowed.
afo
Open feature worktree in terminal and start agent (shortcut for feature-open).