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 soupandpsy/amazing-psycoder-skills --skill psy-exp-codergit clone --depth 1 https://github.com/soupandpsy/amazing-psycoder-skillsWrote 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/soupandpsy/amazing-psycoder-skills/psy-exp-coder)<a href="https://agentmods.dev/skills/soupandpsy/amazing-psycoder-skills/psy-exp-coder"><img src="https://agentmods.dev/badge/skills/soupandpsy/amazing-psycoder-skills/psy-exp-coder.svg" alt="Measured on agentmods" 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.00102 | $0.05677 |
| Opus 5 | $0.00051 | $0.02839 |
| Sonnet 5 | $0.00020 | $0.01135 |
| Haiku 4.5 | $0.00010 | $0.00568 |
Grade A, and why
psy-exp-coder 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 7d 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 — 331 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Experiment Coder
Version
v1.4.0 — unified evidence-gated contract, 2026-07-23; Studio direct ExperimentModel@4 and compiler-bound repair amendment, 2026-08-15. Sub-skill of amazing-psycoder.
Purpose
Generate a runnable delivery candidate from a confirmed config, or modify/debug concrete existing code without silently redesigning the experiment. See Platform Support Status for the evidence boundary of each target.
Intake Modes
| Mode | Minimum input | Design gate |
|---|---|---|
generate |
Saved validated config + conditions + confirmed Decision Registry | Designer Gate 5 required |
modify |
Existing code + requested behavioral change | Gate 5 not replayed; require config/clarification only when the change alters design semantics |
debug |
Existing code + observed error/log/reproduction context | Gate 5 not replayed; preserve behavior unless the root cause is a design defect |
State the selected mode. Never reject a targeted bug fix merely because the original project lacks a PsyCoder config, and never use modify/debug to bypass unresolved design choices for a new experiment.
Design Philosophy
输出即交付候选。 Generated code must be runnable as-is — not pseudocode — but it is not collection-ready until Reviewer audit and target-machine smoke tests pass. In standalone mode, keep confirmed user-editable values in one named config/parameter section and require revalidation after edits. In Studio mode, the frozen ExperimentModel@4, modelHash, and assetSetHash are the only experiment-parameter inputs; all three adapters compile the Model directly and generated runtime code must not create a second editable copy of its semantics.
Core principles:
- 用户的实验,系统的规范 — the user owns the design; the system enforces explicit code-quality checks and reports remaining uncertainty
- 骨架先行 — new generated scripts use the platform Canonical Code Skeleton as the validated API baseline. A structural deviation is allowed only when the config requires it, the reason is documented, equivalent safety/timing/data contracts are preserved, and the deviation is specifically tested;
modify/debugneed not rewrite unrelated existing architecture. - 规格提供逻辑,适配器提供 API — only the confirmed config/ExperimentSpec defines window sequence, stimuli, conditions, correctness, timing, randomization, and data behavior. Paradigm files are optional references, never executable templates. If a reference conflicts with the config, the config wins; if the config is incomplete, stop and return to Designer.
- 反模式零容忍 — block
time.sleep(),event.getKeys(maxWait=),KbCheckfor RT, and stimulus/media I/O inside timed windows. Persist trial data immediately after each trial, outside timing-critical windows. - 代码生成优先级 — confirmed standalone config or frozen Studio ExperimentModel@4 > current platform spec and anti-patterns > config/Model→code mapping > optional exact-design reference. A family reference never supplies executable semantics.
- 生成后必经审计 — code generation is not the final step. After delivery, the user MUST run the code through
psy-exp-reviewerbefore collecting data. The reviewer is the mandatory quality gate between code generation and data collection. - 语言与实验内容一致 — user-facing instructions, feedback, UI prose, comments, and README follow the user's language unless the confirmed config says otherwise. Stimuli preserve the confirmed experimental language/content. API tokens, response keys, identifiers, filenames, and data schema are never translated merely to match the conversation language.
What ships with it
60 files beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.
- agents/openai.yaml 221 B
- jspsych/demo/_raw/antisaccade__antisaccade.js 35 KB runs code
- jspsych/demo/_raw/attention_network_task__attention_network_task.js 52 KB runs code
- jspsych/demo/_raw/bart__bart.js 47 KB runs code
- jspsych/demo/_raw/bilingual_stroop__bilingual_stroop.js 43 KB runs code
- jspsych/demo/_raw/butterfly_simon__Simon.js 59 KB runs code
- jspsych/demo/_raw/change_detection__change_detection.js 80 KB runs code
- jspsych/demo/_raw/children_flanker_task__Children Flanker Task.js 41 KB runs code
- jspsych/demo/_raw/choice_reaction_time__choiceRTT.js 53 KB runs code
- jspsych/demo/_raw/climate_reflection_task__Climate_Reflection_Task.js 77 KB runs code
- jspsych/demo/_raw/continuous_performance_test__continuous_performance_test.js 24 KB runs code
- jspsych/demo/_raw/corsi_blocks__corsi_blocks.js 57 KB runs code
- jspsych/demo/_raw/cyberball__cyberball.js 63 KB runs code
- jspsych/demo/_raw/drag_and_drop__dragAndDrop.js 33 KB runs code
- jspsych/demo/_raw/labjs_stroop__experiment.js 5.7 KB runs code
- jspsych/demo/_raw/mental_rotation__MentalRotation.js 37 KB runs code
- jspsych/demo/_raw/multisensory_nature__multisensory_nature_climate.js 35 KB runs code
- jspsych/demo/_raw/multisensory_nature__multisensory_nature.js 35 KB runs code
- jspsych/demo/_raw/numerical_stroop__NumericalStroop.js 36 KB runs code
- jspsych/demo/_raw/phone_a_friend__phone_a_friend.js 55 KB runs code
- jspsych/demo/_raw/rating_to_choice_task__Rating_to_Choice_Task.js 45 KB runs code
- jspsych/demo/_raw/staircase_demo__orientation_staircase.js 30 KB runs code
- jspsych/demo/_raw/sternberg__sternberg.js 37 KB runs code
- jspsych/demo/_raw/wisconsin_card_sorting__Wisconsin Card Sorting Task.js 42 KB runs code
- jspsych/index.md 1.6 KB
- jspsych/mapping/README.md 4.1 KB
- jspsych/paradigms/antisaccade.md 38 KB
- jspsych/paradigms/attention-network-task.md 54 KB
- jspsych/paradigms/bart.md 50 KB
- jspsych/paradigms/bilingual-stroop.md 46 KB
- jspsych/paradigms/butterfly-simon.md 61 KB
- jspsych/paradigms/change-detection.md 83 KB
- jspsych/paradigms/children-flanker-task.md 44 KB
- jspsych/paradigms/choice-reaction-time.md 56 KB
- jspsych/paradigms/climate-reflection-task.md 80 KB
- jspsych/paradigms/continuous-performance-test.md 26 KB
- jspsych/paradigms/corsi-blocks.md 60 KB
- jspsych/paradigms/cyberball.md 65 KB
- jspsych/paradigms/drag-and-drop.md 36 KB
- jspsych/paradigms/east.md 19 KB
- jspsych/paradigms/iat.md 31 KB
- jspsych/paradigms/index.md 2.1 KB
- jspsych/paradigms/labjs-stroop.md 8.2 KB
- jspsych/paradigms/mental-rotation.md 39 KB
- jspsych/paradigms/multisensory-nature-climate.md 37 KB
- jspsych/paradigms/multisensory-nature.md 38 KB
- jspsych/paradigms/numerical-stroop.md 39 KB
- jspsych/paradigms/phone-a-friend.md 58 KB
- jspsych/paradigms/psychophysics-staircase.md 32 KB
- jspsych/paradigms/rating-to-choice-task.md 47 KB
- jspsych/paradigms/rating-to-choice.md 47 KB
- jspsych/paradigms/README.md 2.9 KB
- jspsych/paradigms/sternberg.md 40 KB
- jspsych/paradigms/stroop.md 1.8 KB
- jspsych/paradigms/wisconsin-card-sorting.md 45 KB
- jspsych/README.md 5.5 KB
- jspsych/spec/README.md 44 KB
- psychopy/demo/_raw/antisaccade__antisaccade_lastrun.py 56 KB runs code
- psychopy/demo/_raw/butterfly_simon__simon_lastrun.py 90 KB runs code
- psychopy/demo/_raw/butterfly_simon__Simon.py 74 KB runs code
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.
- 7d ago First seen · 331 lines · 102 tokens per session scan A 098482ed14c4
psy-exp-coder is a skill published in the GitHub repository soupandpsy/amazing-psycoder-skills (33 stars, last pushed 22d ago), licensed MIT. It adds 102 tokens to every session and 5,677 once invoked, about $0.0005 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.
Other skills, from other repositories
qector-math-foundations
The strict mathematical ground rules for every QECTOR claim. Encodes the F2 notation, the 16 correctness theorems, the Wilson 95% score interval for LER, the required-artifact- metadata contract, safe-wording rules, and the published limitations that must travel with every claim (reference manual v1.0.0, DOI…
qector-core
Core domain knowledge and verified facts for the QECTOR quantum error correction platform (plugin v1.0.6, decoder wheel 1.0.0). Covers the app-free library MCP server (8 stable tools), the opt-in research server (29 provisional tools including the evidence layer), the privileged admin server (3 tools), 11 slash…
qector-bp-osd
Belief propagation with ordered-statistics post-processing (BP-OSD) for QECTOR. Covers the box-plus kernel phi(x) = -ln(tanh(x/2)), the log-domain sum-product / min-sum / relay schedules, the OSD-0 / OSD-W solve (Theorem 11), the ambiguity-cluster partition (Theorem 12), and the worked examples from the v1.0.0…
qector-codes-builder
Building and inspecting QEC codes for QECTOR. Covers the v1.0.0 library code families (repetition, ring, rotatedsurface, unrotatedsurface, toric, heavyhex, colorcode), the legacy generatechecks generators, and the custom-matrix / hypergraph-product / bicycle paths. Load when a question asks "what code should I use?"…
qector-decoders-deep-dive
Per-decoder internals from the v1.0.0 reference manual. For each of the fifteen specialised backends, gives the algorithm, the theorem(s) it inherits, its claim boundary, and a one-line code snippet. Load when a question asks "how does X work", "which decoder is right for Y", or "what is the difference between A and…
qector-glossary
QECTOR terminology, notation, and symbols from the v1.0.0 reference manual (Appendix A and B). Load for any question about what a term means, what symbol is used, or how the notation is written.