submitted-code

submitted-code is a skill for Claude Code from synthetic-sciences/openscience. It costs 158 tokens per session (1,634 once invoked), scanned A, original, Apache-2.0.

A guide for writing submitted programs that still work when another person or an automated grader runs them in a clean environment.

In plain words
What is it for?
Use it to extract the exact input and output contract, choose only allowed libraries, create one self-contained entry point, and target the grader's runtime.
Why use it?
It prevents code from depending on local packages, cached files, working-directory assumptions, or inputs that were only present during development.

Skill for Claude Code

Written for Claude Code: allowed-tools in frontmatter.

Good fit Use it to extract the exact input and output contract, choose only allowed libraries, create one self-contained entry point, and target the grader's runtime.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/synthetic-sciences/openscience/submitted-code
About the project

synthetic-sciences/openscience is an AI workbench that carries out scientific research by reading papers, forming hypotheses, writing and running code, conducting experiments, analyzing results, and preparing reports. Researchers use it for work in machine learning, biology, physics, and chemistry with remote or local models. Catalogue add-ons extend its scientific workflows through skills and instructions.

synthetic-sciences/openscience · 4,025 stars · on GitHub · openscience.sh

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.

Any agent
npx skills add synthetic-sciences/openscience --skill submitted-code
Clone the repo
git clone --depth 1 https://github.com/synthetic-sciences/openscience

Made for: Claude Code.

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 submitted-code

README.md
[![agentmods](https://agentmods.dev/badge/skills/synthetic-sciences/openscience/submitted-code/github.svg)](https://agentmods.dev/skills/synthetic-sciences/openscience/submitted-code)
Your own site
<a href="https://agentmods.dev/skills/synthetic-sciences/openscience/submitted-code"><img src="https://agentmods.dev/badge/skills/synthetic-sciences/openscience/submitted-code/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 submitted-code

Your own site · 80×15
<a href="https://agentmods.dev/skills/synthetic-sciences/openscience/submitted-code"><img src="https://agentmods.dev/badge/skills/synthetic-sciences/openscience/submitted-code.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 158 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,634 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 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.00158 $0.01634
Opus 5.5 $0.00063 $0.00654
Sonnet 5.5 $0.00032 $0.00327
Haiku 4.5 $0.00016 $0.00163

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

Security

Grade A, and why

submitted-code 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 20d 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.

backend/cli/skills/core/submitted-code/SKILL.md · 111 lines

How it starts

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

Submitted code

Code that produces the right answer on your machine and fails on the grader's is the most expensive kind of wrong: the science was right and the score is zero. The asymmetry is simple. You developed with everything you installed, every file you had staged, your working directory, your thread count and your Python. Whoever re-runs your artifact has the base image, the inputs the contract names, a clean directory and a timer.

Write for that second environment from the first line.

The contract to extract first

Before writing the entry point, read the specification and write down, as a checklist:

  • Entry point: exact path, file name, function or CLI signature, argument order and types, return type. A function that must return a plain list does not return a NumPy array; a CLI that must accept a path does not also require a flag you invented.
  • Libraries you may rely on: only what the specification or the base environment names. Everything else is unavailable at re-execution even if pip install succeeded for you during development.
  • Inputs: which paths are passed in, which are read-only, and what may differ from the examples you were given (size, layout, identifiers, parameter ranges, number of cases).
  • Outputs: exact paths, formats and whether extra files in that directory are tolerated.
  • Limits: wall clock and CPU per call or per case, memory, thread count, whether the network exists, and which user the process runs as.

Rules

  1. One self-contained artifact. The entry point imports the standard library, the declared third-party libraries and nothing else of yours. No sibling modules, no helper file next to it, no configuration or parameter file unless the contract lists it, no data file you wrote during development. If constants were fitted, embed them as literals in the file.
  2. Nothing you installed counts. Treat every dependency you added during development as absent. If a method needs a package the environment does not have, either implement the part you need directly or choose a method the environment supports; note the choice in the write-up.
  3. No network, no side channels. No downloads, no sockets, no subprocesses spawning compilers or fetching data, no ctypes loading of libraries you built, no reads outside the arguments you were given, no writes outside the declared output path. Sandboxes commonly block these outright, and a blocked call ends the run.
  4. Stateless and deterministic. Each invocation stands alone: no cached globals from a previous call, no reliance on invocation order, no temporary files left behind. Seed every random draw from a seed the contract supplies or a fixed constant, and keep the computation reproducible across runs.
  5. Frugal with threads and memory. Assume one or two cores and the stated memory, not your machine. Cap BLAS and OpenMP threads inside the artifact (OMP_NUM_THREADS, OPENBLAS_NUM_THREADS, MKL_NUM_THREADS) rather than relying on the caller, and stream large inputs instead of loading them whole.
  6. Fit the per-call budget with headroom. Time the slowest realistic case and aim for a fraction of the cap; a pure-interpreter loop that is correct but two times over the limit scores the same as a wrong answer. Where the limit forces it, vectorize, precompute a table, or write the hot kernel in a compiled language the environment already has. When the requirement is relative — within some factor of a reference implementation, or better than a named baseline — time that reference yourself on the same machine and treat the ratio as part of correctness, not as polish. When the real inputs exist only at evaluation — data supplied through a callback, an oracle linked in by the grader, a hidden file — and an accuracy bar must be met on them, the headroom is not idle safety margin, it is the only time anyone ever computes on the real problem. Any setting you freeze during development (a resolution, a step count, an iteration cap) was chosen against cases you made up. Put the convergence check inside the artifact: solve at increasing settings, compare successive answers on the real inputs, stop when the change is well under the bar or when a clock the code keeps itself says the budget is nearly spent, and return the finest answer reached.
  7. Respect declared prohibitions literally. A specification that bans a library, a module, a language feature or a class of tactic is often enforced by a scan that runs before your code does, so a single banned import fails the work outright however good the result. Collect the ban list with the rest of the contract and grep your final artifact for each item, including indirect imports pulled in by a helper.
  8. Fail informatively inside the contract. Raise the exception type the specification names, or return the documented sentinel; never exit the process, never print to stdout when the contract expects a return value, and never swallow an error into a plausible wrong answer.

Read the full file on GitHub · 111 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. 20d ago First seen · 111 lines · 158 tokens per session scan A c01910ec8e10

Subscribe to this mod's changes

submitted-code is a skill published in the GitHub repository synthetic-sciences/openscience (4,025 stars, last pushed today), licensed Apache-2.0. It adds 158 tokens to every session and 1,634 once invoked, about $0.0006 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-09-27.

Related

Other skills, from other repositories

tmux-manual-qa

Run a single manual tmux-based QA scenario for the todo continuation feature against the real CLI (./pi-test.sh) in an interactive TUI. Captures scrollback, asserts deterministic pass/fail count markers, and cleans up test fixtures. Use only for the manual-qa milestone features.

code-yeongyu/senpi · 66 tokens

audit-harness

Use when auditing HARNESS.md, pre-commit hooks, pre-push hooks, architecture gates, or CI workflows for tunacode-cli. This skill treats any mismatch, skipped gate, or failing check as a critical failure and requires manual one-by-one execution rather than make targets, batch wrappers, or summary-only audits.

alchemiststudiosDOTai/tunacode · 69 tokens

knowledge-engineering-quality-and-delivery-performance-security-and-snapshot-gates

A set of quality gates that checks performance, security, dependencies, test coverage, and stable output snapshots.

echoVic/blade-code · 172 tokens

knowledge-engineering-quality-and-delivery-real-api-qualification-and-e2e

A guide to tests that call real AI providers and verify complete user flows across the CLI, web interface, terminals, and ACP hosts.

echoVic/blade-code · 182 tokens

tricorder-cli

Full CLI reference for the tricorder daemon (build diagnostics, test results, source lookup, eval comments, logs). This is the fallback invoked by the tricorder skill when the tricorder-mcp MCP tools aren't available or aren't working — invoke tricorder first; it decides whether this is needed.

tweag/tricorder · 67 tokens

knowledge-engineering-quality-and-delivery

A project-wide quality and delivery workflow covering tests, release checks, builds, publishing, and bilingual documentation for Blade Code.

echoVic/blade-code · 132 tokens