synaplan: Instructions file for Codex

AGENTS.md

Synaplan is an instructions file for Codex, OpenCode from metadist/synaplan. It costs 9,544 tokens per session, scanned C, original, Apache-2.0.

A development guide for Synaplan, a full-stack knowledge-management application that stores information, searches it by meaning, and provides chat interfaces. It also covers connections to WhatsApp and email and several AI providers.

In plain words
What is it for?
Use it when developing or deploying Synaplan, including its PHP and Vue application, Docker environments, vector search, chat widgets, and messaging integrations.
Why use it?
It gives developers project rules and architecture details for working on Synaplan without guessing how its services fit together.

Instructions file for CodexOpenCode

Written for Codex and OpenCode: the file is AGENTS.md. Also seen: mentions Claude Code.

This is metadist/synaplan's own configuration. It tells Codex and OpenCode how to work on synaplan itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything synaplan configures →

Reuse

Borrowing it

Nothing to install: this file belongs to metadist/synaplan. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/metadist/synaplan/main/AGENTS.md
Clone the repo
git clone --depth 1 https://github.com/metadist/synaplan

Made for: Codex, OpenCode.

Wrote 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.

agentmods badge for Synaplan

README.md
[![agentmods](https://agentmods.dev/badge/instructions/metadist/synaplan/agents-md/github.svg)](https://agentmods.dev/instructions/metadist/synaplan/agents-md)
Your own site
<a href="https://agentmods.dev/instructions/metadist/synaplan/agents-md"><img src="https://agentmods.dev/badge/instructions/metadist/synaplan/agents-md/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.

agentmods 80×15 button for Synaplan

Your own site · 80×15
<a href="https://agentmods.dev/instructions/metadist/synaplan/agents-md"><img src="https://agentmods.dev/badge/instructions/metadist/synaplan/agents-md.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 9,544 This file is loaded in full into every session.
When invoked 9,544 The same file — it is already loaded in full.
Security scan C 2 findings. A grade says what 26 rules found in the file — not that it is safe.
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.1 $0.09544 $0.09544
Opus 5.5 $0.03818 $0.03818
Sonnet 5.5 $0.01909 $0.01909
Haiku 4.5 $0.00954 $0.00954

Measured 12d ago against content hash b11c64d1f296, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade C, and why

Synaplan scanned grade C with 2 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 12d 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.

Recursive force deletehighDestructive command

rm -rf with a variable or a broad path is one typo away from removing the wrong tree.

docker compose exec -T backend rm -rf var/cache/test

Makes network callslowCapability

Not a fault in itself. Listed so you know the mod talks to something, and to what.

- Test endpoints via Swagger UI at `http://localhost:8000/api/doc` (not curl/Postman). Before creating a new endpoint, check if a similar one exists.
AGENTS.md · 498 lines

How it starts

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

Synaplan Development Guide

Full-stack AI knowledge management platform: RAG with MariaDB VECTOR + Qdrant, embeddable chat widgets, WhatsApp/Email integration, multiple AI providers (Ollama, OpenAI, Anthropic, Groq, Gemini, xAI).

Stack: PHP 8.4/Symfony 8.1, Vue 3/TypeScript/Vite, Docker Compose, frankenphp/caddy.

Repository Architecture

Repo Purpose
synaplan/ Main app source code, local development environment (includes Qdrant)
synaplan-base-php/ Base Docker image (FrankenPHP + gRPC + whisper.cpp)
synaplan-platform/ Production deployment configs, pulls pre-built images

Local dev (synaplan/): Builds from source, includes all dev tools (phpMyAdmin, MailHog, Vite dev server). Qdrant runs as a Docker service for AI memories and RAG vector search.

Production (synaplan-platform/): Uses ghcr.io/metadist/synaplan:latest, multi-server with external Galera cluster. See _devextras/SYSADMIN-help.md.

Critical Rules

Language

  • Code, comments, commit messages: ALWAYS English. Never write German (or any other language) in code or comments.
  • Chat responses: in the language the user chooses.

Perfect UX & Stability — the product bar (MANDATORY)

Without usability and stability the software is bad, whatever the API does. Every plan, sprint file and PR that touches anything a person sees or waits for is measured against this bar. It is the merge gate, not a polish pass. The binding contract is docs/UX_CONTRACT.md (rules U1–U12); the use-case list that applies it is _devextras/planning/20260913-use-case-research/README.md §1.

A user-visible change is done only when all seven hold:

  1. First run without help. A new user reaches the result from an empty install guided only by the screen. Every empty state is one sentence plus one primary action (U5). Flag off ⇒ the surface is absent, never a teaser or a dead control (U11).
  2. Ten-second findability. Whatever was produced or granted — file, mail, calendar entry, pending approval, run, shared item — the person finds it in ten seconds from where they normally work: badge, sibling inbox (Incoming chats / Approvals pattern), or list filter. Name that path in the plan before the first .vue (U1, U2, U6).
  3. Five questions on the open surface. Who owns this? Who else? What will it touch / what can they do? How do I stop it? Where did it come from? Answered on the resource itself, not only inside a dialog (U7).
  4. Honest outcome copy. Every run, job and stream reaches a terminal state with one sentence a non-technical user understands — no HTTP code, no stack trace, a named recovery. When a write was involved, say what did and did not happen (U8). Never "Nothing was sent" when something was.
  5. Undo is a click. Turn off, revoke, reject, disconnect — from the same row, with the consequence stated in one kind-specific sentence (U3).
  6. Stability is UX. No stuck "running", no silent skip, no setTimeout race fix, no feature that works only while the tab is open. The full pre-commit gate and the named journey walked end to end in the browser (click, type, find, undo — U10) are the proof; a screenshot is not.
  7. Every theme, every size, every locale. Light, dark, 320 px, WCAG AA, all five locales in the same PR (U9).

Read the full file on GitHub · 498 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. 12d ago Changed · +3 lines · +63 tokens per session b11c64d1f296
  2. 13d ago Changed · +3 lines · +334 tokens per session 0e3ac72ca8ee
  3. 22d ago Changed · +2 lines · +85 tokens per session 1d4bf63ca4b3
  4. 1mo ago Changed · +2 lines · +145 tokens per session ab6b8fdfe3ab
  5. 1mo ago Changed · +10 lines · +179 tokens per session 3f4c441e2a8b
  6. 1mo ago Changed · +4 tokens per session 7c8479486869
  7. 1mo ago Changed · +1 tokens per session f23db5f36e21
  8. 1mo ago Changed · +47 lines · +842 tokens per session e71570d1e92f
  9. 1mo ago Changed · +1 lines · +57 tokens per session 5a124d43eb4f
  10. 1mo ago First seen · 430 lines · 7,834 tokens per session scan C 99bfbf38d2c3

Subscribe to this mod's changes

Synaplan is an instructions file published in the GitHub repository metadist/synaplan (313 stars, last pushed today), licensed Apache-2.0. It adds 9,544 tokens to every session, about $0.0382 per session on Opus 5.5. A static security scan graded it C with 2 findings (recursive force delete, makes network calls). No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other instructions, from other repositories