ctx AGENTS.md

Instructions for ContextFun, a command-line tool that stores and searches project workstreams and their context.

In plain words
What is it for?
Use it to list workstreams, search prior context, or start a workstream for the current repository.
Why use it?
They make chat-style requests such as listing or searching context run through the exact supported commands.

Instructions file for CodexOpenCode

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add instructions/dchu917/ctx/agents-md
Clone the repo
git clone --depth 1 https://github.com/dchu917/ctx

Made for: Codex, OpenCode.

Per session 1,228 This file is loaded in full into every session.
When invoked 1,228 The same file — it is already loaded in full.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.01228 $0.01228
Opus 5 $0.00614 $0.00614
Sonnet 5 $0.00246 $0.00246
Haiku 4.5 $0.00123 $0.00123

Measured 2d ago against content hash 7795de251325, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

ctx AGENTS.md scanned grade A with 0 findings 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 2d 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.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

AGENTS.md · 76 lines

How it starts

The opening of the file, as written. The whole thing — 76 lines — stays where its author put it; the contents beside it link to each section on GitHub.

ContextFun Agent Guide

Use the installed ContextFun commands directly when the user types them as a message.

Supported chat-style commands in this repo:

  • ctx

    • Run ctx.
    • If that is unavailable, run python3 scripts/ctx_cmd.py.
    • Return stdout directly.
  • ctx list

    • Run ctx list.
    • If that is unavailable, run python3 scripts/ctx_cmd.py list.
    • Return stdout directly.
    • If the user typed the plain ctx list form, do not describe it as ctx-list or say you are using the alias skill. Prefer the exact command the user typed.
    • ctx list --this-repo should show only workstreams linked to the current repo.
  • ctx search <query>

    • Run ctx search <query>.
    • If that is unavailable, run python3 scripts/ctx_cmd.py search <query>.
    • Return the grouped search results directly.
    • Prefer using this when the user asks to find the relevant workstream or recall prior context.
    • ctx search <query> --this-repo should search only workstreams linked to the current repo.
  • ctx start [--pull] <workstream>

    • Treat --pull strictly as a flag, never as part of the workstream name.
    • Run ctx start [--pull] <workstream>.
    • If that is unavailable, run python3 scripts/ctx_cmd.py start [--pull] <workstream> --format markdown.
    • start means create a new workstream. If that name already exists, ctx automatically creates <workstream> (1), <workstream> (2), and so on.
    • Do not paste the full ctx pack back unless the user asks for it.
    • Summarize the loaded workstream briefly, mention the last task that was being worked on, mention the latest relevant activity, and ask how the user wants to proceed.
    • Make it explicit that in Codex the user can inspect the full command output with ctrl-t, and in Claude they can expand the tool output block.
  • ctx resume <workstream>

    • Run ctx resume <workstream>.
    • If that is unavailable, run python3 scripts/ctx_cmd.py resume <workstream> --format markdown.
    • resume means continue an existing workstream. If no matching workstream exists, tell the user plainly that no matching workstream exists.
    • If the workstream belongs to a different repo, ctx resume should fail unless the user explicitly adds --allow-other-repo.
    • Do not paste the full ctx pack back unless the user asks for it.
    • Summarize the loaded workstream briefly, mention the last task that was being worked on, mention the latest relevant activity, and ask how the user wants to proceed.
    • Make it explicit that new context from this conversation will now be appended to the resumed workstream.
    • If the user wants to explore without changing that workstream, tell them to create a branch first with ctx branch <source-workstream> <target-workstream>.
    • Make it explicit that in Codex the user can inspect the full command output with ctrl-t, and in Claude they can expand the tool output block.
  • ctx rename <new-name> or ctx rename <new-name> --from <existing-workstream>

    • Run ctx rename ....
    • If that is unavailable, run python3 scripts/ctx_cmd.py rename ....
    • If the requested new name already exists, ctx auto-suffixes the rename result the same way as start.
  • ctx delete <workstream> or ctx delete --session-id <id>

    • Run ctx delete ....
    • If that is unavailable, run python3 scripts/ctx_cmd.py delete ....
    • This is destructive: it deletes the latest session in the named workstream, or the explicit session id.
  • ctx curate <workstream> or ctx delete --interactive <workstream>

    • Run ctx curate <workstream>.
    • If that is unavailable, run python3 scripts/ctx_cmd.py curate <workstream>.
    • This opens the interactive terminal UI for scrolling saved entries and curating what future loads should include.
  • ctx branch <source-workstream> <target-workstream>

    • Run ctx branch <source-workstream> <target-workstream>.
    • If that is unavailable, run python3 scripts/ctx_cmd.py branch <source-workstream> <target-workstream> --format markdown.
    • If the source workstream belongs to a different repo, ctx branch should fail unless the user explicitly adds --allow-other-repo.
    • This creates a new workstream seeded from the source workstream snapshot, but future transcript pulls stay independent.
    • Do not paste the full ctx pack back unless the user asks for it.
    • Summarize the new branch briefly, mention the last task that was being worked on in the inherited context, mention the latest inherited context, and ask how the user wants to proceed.
    • Make it explicit that in Codex the user can inspect the full command output with ctrl-t, and in Claude they can expand the tool output block.

Read the full file on GitHub · 76 lines

Changes

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.

  1. 2d ago First seen · 76 lines · 1,228 tokens per session scan A 7795de251325

Subscribe to this mod's changes

ctx AGENTS.md is an instructions file published in the GitHub repository dchu917/ctx (128 stars, last pushed 4mo ago), licensed MIT. It adds 1,228 tokens to every session, about $0.0061 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.