submit-hook

submit-hook is a skill for Claude Code, Codex from aeonfun/aeon. It costs 39 tokens per session (1,402 once invoked), scanned A, original, MIT.

A tool for submitting an already deployed Uniswap v4 hook to a public registry. Uniswap is a blockchain trading system, and a hook is code that adds behavior around trades or pools.

In plain words
What is it for?
Use it to list eligible live mainnet hook deployments with their address, supported chain, and human-readable description. A pull request is a proposed change for review before it is merged.
Why use it?
It removes the manual work of formatting a registry listing, opening a GitHub pull request, and using an issue when direct repository access is unavailable.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one.

Good fit Use it to list eligible live mainnet hook deployments with their address, supported chain, and human-readable description. A pull request is a proposed change for review before it is merged.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/aeonfun/aeon/submit-hook
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 aeonfun/aeon --skill submit-hook
Clone the repo
git clone --depth 1 https://github.com/aeonfun/aeon

Made for: Claude Code, Codex.

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 submit-hook

README.md
[![agentmods](https://agentmods.dev/badge/skills/aeonfun/aeon/submit-hook/github.svg)](https://agentmods.dev/skills/aeonfun/aeon/submit-hook)
Your own site
<a href="https://agentmods.dev/skills/aeonfun/aeon/submit-hook"><img src="https://agentmods.dev/badge/skills/aeonfun/aeon/submit-hook/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 submit-hook

Your own site · 80×15
<a href="https://agentmods.dev/skills/aeonfun/aeon/submit-hook"><img src="https://agentmods.dev/badge/skills/aeonfun/aeon/submit-hook.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 39 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,402 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.00039 $0.01402
Opus 5 $0.00019 $0.00701
Sonnet 5 $0.00008 $0.00280
Haiku 4.5 $0.00004 $0.00140

Measured yesterday against content hash 669cda6057ec, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-10, from the pricing page.

Security

Grade A, and why

submit-hook 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 yesterday.

The scan reads SKILL.md. This mod also ships 1 executable file (submit-univ4.py), listed below but not scanned — reading those needs a real analyzer, not pattern matching.

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.

skills/submit-hook/SKILL.md · 73 lines

How it starts

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

${var} - a hook address (0x...) to submit. Empty means the most recent live mainnet deploy in memory/state/hook-deploys.json.

Today is ${today}. This skill takes a hook this instance already deployed and lists it on the public registry aeonfun/univ4-hooks (the source behind the aeon hook marketplace). It does the formatting the registry expects, then opens a PR. The flags and callbacks are decoded from the address by the registry, so this skill only supplies the address, the chain, and the human-readable listing.

The mechanics (clone, write the entry, regenerate the registry, open the PR, fall back to an issue when there is no push access) live in skills/submit-hook/submit-univ4.py, so all GitHub egress stays inside that helper.

What lists, and what does not

  • Only live mainnet deploys. A dry-run or a testnet deploy is never submitted (the registry lists real, verifiable hooks). Skip with SUBMIT_HOOK_SKIP.
  • Only registry-supported chains. The registry's chains.json covers ethereum base robinhood monad bnb arbitrum unichain. A deploy on any other chain is skipped (SUBMIT_HOOK_UNSUPPORTED_CHAIN); note it and stop.
  • Idempotent. The helper skips if the address (any chain) or the slug is already listed, so re-running is safe.

Steps

  1. Pick the deploy. Read memory/state/hook-deploys.json (a list of deploy records). If ${var} is a 0x... address, select the record whose hookAddress matches it; else select the most recent record with network: "mainnet". No matching record means notify and exit SUBMIT_HOOK_NONE.

  2. Gate it. If the record's network is not mainnet, exit SUBMIT_HOOK_SKIP. If its chain is not one of ethereum base robinhood monad bnb arbitrum unichain, exit SUBMIT_HOOK_UNSUPPORTED_CHAIN (the registry cannot list it yet). Confirm int(hookAddress,16) & 0x3FFF == int(flags,16); if not, the record is inconsistent, so notify and exit SUBMIT_HOOK_BAD_RECORD.

  3. Name it. Derive a PascalCase contract-style name from the record's brief/feature (a market-hours gate becomes MarketHoursGate). This is the marketplace title and the hooks/<slug>.json filename.

Read the full file on GitHub · 73 lines

Files

What ships with it

1 file 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.

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. yesterday First seen · 73 lines · 39 tokens per session scan A 669cda6057ec

Subscribe to this mod's changes

submit-hook is a skill published in the GitHub repository aeonfun/aeon (722 stars, last pushed today), licensed MIT. It adds 39 tokens to every session and 1,402 once invoked, about $0.0002 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-09-09.

Related

Other skills, from other repositories

agent-framework-py-release

Use when cutting a Python release for the microsoft/agent-framework monorepo. Triggers on "bump py versions", "cut a python release", "prepare release PR for python", "release py packages", "bump python to X.Y.Z", or similar requests to bump Python package versions and prepare a release PR. Handles all four lifecycle…

microsoft/agent-framework · 103 tokens

no-mistakes

Validate committed feature-branch changes through the no-mistakes pipeline: intent, rebase, review, test, docs, lint, push, PR, and CI. Use when the user asks to run no-mistakes, ship safely, validate before pushing, or gate a change before it reaches upstream.

stevesolun/ctx · 67 tokens

git-workflow

Git operations: commits, branches, PRs, and conflict resolution.

vstorm-co/pydantic-deepagents · 17 tokens

land-and-deploy

Merge PR, wait for CI, verify deploy, run canary. The complete landing pipeline.

FlorianBruniaux/claude-code-plugins · 24 tokens

guide-recap

Transform CHANGELOG entries into social content (LinkedIn, Twitter/X, Newsletter, Slack) in FR + EN. Use after releases or weekly to generate release notes, announcements, social media posts, or recap summaries from guide updates.

FlorianBruniaux/claude-code-plugins · 50 tokens

release-notes-generator

Generate release notes in 3 formats (CHANGELOG.md, PR body, Slack announcement) from git commits. Automatically categorizes changes and converts technical language to user-friendly messaging. Use for releases, changelogs, version notes, what's new summaries, or ship announcements.

FlorianBruniaux/claude-code-plugins · 59 tokens