Potpie is a tool that turns a software repository and its development history into a context graph for AI coding agents. Agents use that graph to answer codebase questions, plan changes, debug problems, and write code with project-specific information. The catalogue includes skills, hooks, commands, and a plugin for integrating Potpie into coding-agent workflows.
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.
npx skills add potpie-ai/potpie --skill potpie-project-preferencesgit clone --depth 1 https://github.com/potpie-ai/potpieWrote 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/skills/potpie-ai/potpie/potpie-project-preferences)<a href="https://agentmods.dev/skills/potpie-ai/potpie/potpie-project-preferences"><img src="https://agentmods.dev/badge/skills/potpie-ai/potpie/potpie-project-preferences/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/skills/potpie-ai/potpie/potpie-project-preferences"><img src="https://agentmods.dev/badge/skills/potpie-ai/potpie/potpie-project-preferences.svg" alt="Reviewed on agentmods" width="80" height="20"></a>- NVIDIA SkillSpector pass
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.00063 | $0.01203 |
| Opus 5.5 | $0.00025 | $0.00481 |
| Sonnet 5.5 | $0.00013 | $0.00241 |
| Haiku 4.5 | $0.00006 | $0.00120 |
Grade A, and why
potpie-project-preferences 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 3d 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.
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.
Potpie Project Preferences
Use this skill before implementation or review so local conventions shape the work instead of being rediscovered from code.
Fast Path
Run the two independent reads below concurrently as part of one shared discovery pass. Reuse current results from another skill or hook for the same task, pot, and scope; loading this skill does not repeat resolve. Use a known explicit pot selector on all calls and check returned pot IDs before combining results. Resolve ambiguous routing first.
- One bounded context call — with the default
featureintent it reads preferences, features, infra, decisions, owners and docs:
potpie resolve "<the task in the user's words>"
- Preferences by scope, with no
--query. Preferences are constraints, not search hits: this view applies an absolute 0.7 similarity floor to a query, which a task sentence rarely clears, andresolveapplies the same floor to the task text, so it lists a preference only on a near-verbatim match. Scoped preferences are required; skip the call only when equivalent current scoped results are already available.
potpie graph read --subgraph decisions --view preferences_for_scope --repo current --limit 12
potpie graph read --subgraph decisions --view preferences_for_scope --scope service:<service>,path:<path-or-dir> --limit 12
Use the repo read immediately; the service/path command is an alternative when
those scopes are known, or a refinement when repo results leave a gap. If the
task names an entity whose key is unknown, run untyped search-entities alongside
the initial reads; use its returned key for dependent scope refinements.
--repo current takes the repo key from the working tree; spelled by hand it
is repo:<host>/<org>/<name> (repo:github.com/acme-corp/acme-shop). A scope
hides only preferences bound to a different value of the same dimension: a
service key hides other services' rules, a repo key hides nothing bound by
service, and items=0 means nothing is bound to that value. Each row comes
with its anchor entity, so items=2 is one preference. Add
--query "<terms>" --query-threshold 0.4 only when the scope returns more
than a dozen rows. Search only for a key no read has shown:
potpie graph search-entities "<repo service package>" --limit 10. Do not
pre-read pot info, source list, or graph status.
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.
- 3d ago Changed · +43 lines be5000c54923
- 1mo ago First seen · 67 lines · 63 tokens per session scan A a7aee2c8feda
potpie-project-preferences is a skill published in the GitHub repository potpie-ai/potpie (5,743 stars, last pushed yesterday), licensed Apache-2.0. It adds 63 tokens to every session and 1,203 once invoked, about $0.0003 per session on Opus 5.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.
Other skills, from other repositories
guardrails-developer-create-guardrails
Helps developers create a NeMo Guardrails configuration for an LLM application. Use when users want to build, scaffold, configure, test, or iterate on input, output, retrieval, dialog, execution, Colang, or catalog-based guardrails. Trigger keywords - create guardrails, build guardrails, scaffold config, write rails…
oracle-mcp-server-helper
Wire the oracle-database-mcp-server into a Python project so an LLM agent can call listtables / describetable / runsql / vectorsearch at inference time. Handles install, stdio launch, and LangChain tool conversion via langchain-mcp-adapters. Use whenever a project needs a Grok 4 / GPT-class agent that talks to a live…
langchain_patterns
Implement Retrieval-Augmented Generation (RAG) systems with LangChain4j. Build document ingestion pipelines, embedding stores, vector search strategies, and knowledge-enhanced AI applications. Use when creating question-answering systems over document collections or AI assistants with external knowledge bases.
langchain_patterns
Implement Retrieval-Augmented Generation (RAG) systems with LangChain4j. Build document ingestion pipelines, embedding stores, vector search strategies, and knowledge-enhanced AI applications. Use when creating question-answering systems over document collections or AI assistants with external knowledge bases.
scope-creep-detector
Analyzes git diffs against a stated intent to detect scope creep, unrelated files, broad pull requests, changes that grew beyond a fix, dependency additions, public API renames, config or CI edits, oversized hunks, and formatting-only files. Use when the user asks whether a change grew beyond the fix, a PR is too…
owasp-top-10-testing
Test an application against the OWASP Top 10 with Strix — autonomous AI agents that attempt real exploits for each category of the current OWASP Top 10:2025 (broken access control including SSRF, security misconfiguration, software supply chain failures, cryptographic failures, injection, insecure design…