An Agent Skill that teaches your AI coding agent to use ProgramAsWeights (PAW) - compile a natural-language spec into a tiny neural function that runs locally - for fuzzy text tasks like classification, extraction, format repair, fuzzy matching, log triage, and routing.
npx skills add programasweights/skillsWorks with Claude Code, Cursor, Codex, GitHub Copilot, and 65+ other agents (the
skills CLI installs it into each one's skill
directory). Add -g to install globally for every project:
npx skills add programasweights/skills -gOr try it without installing:
npx skills use programasweights/skills@programasweights | claudeOnce installed, the skill activates automatically when you ask your agent to do fuzzy
text -> text work that regex can't handle but a full LLM call per item is overkill for:
- Classify / categorize (sentiment, urgency, intent, topic, spam, ALERT vs QUIET)
- Extract fields from messy text (emails, names, dates, IDs)
- Repair / normalize formats (broken JSON, dates)
- Fuzzy / typo-tolerant matching and near-duplicate detection
- Log triage and intent routing
The agent will check the PAW Hub for a ready-made function, or compile one from a spec with examples, iterate it against test cases, and reuse it locally.
skills/programasweights/
SKILL.md # the skill (trigger + workflow); the eval loop is embedded inline
LICENSE.txt # per-skill MIT license
references/ # api, writing-good-specs, browser-sdk, troubleshooting (loaded on demand)
assets/ # brand icon (paw.svg, icon-512.png)
SECURITY.md # exactly what the skill does + data flow
The installed skill is script-free - Markdown instructions only, no bundled executable code. (The Codex/Claude plugin + marketplace manifests in this repo are packaging only and are not yet listed in any directory.)
Copy skills/programasweights/ into your agent's skills directory, e.g.:
- Claude Code:
~/.claude/skills/programasweights/ - Codex:
~/.codex/skills/programasweights/ - GitHub Copilot:
.github/skills/programasweights/
- Compile sends your spec to the hosted PAW API (
https://programasweights.com) and returns a program id. Do not put secrets in a spec. - Inference runs locally through the official
programasweightsSDK and works offline after the first download. No user data is sent at inference time. - Auth is optional (anonymous use works). MIT licensed; read every file before installing.
- Full details, including what the skill does not do, are in SECURITY.md. For reproducibility, pin to a release tag or commit and re-review before upgrading.
- Website: https://programasweights.com
- Agent guide (always current): https://programasweights.com/AGENTS.md
- Docs: https://programasweights.readthedocs.io
If you use this skill in research, cite Program-as-Weights for the underlying programming paradigm. Also cite Compile by Training when using the training compiler.
Program-as-Weights: A Programming Paradigm for Fuzzy Functions
NeurIPS 2026 · Preprint
@inproceedings{zhang2026programasweights,
title = {{Program-as-Weights: A Programming Paradigm for Fuzzy Functions}},
author = {Zhang, Wentao and Hotsko, Liliana and Kim, Woojeong and Nie, Pengyu and Shieber, Stuart and Deng, Yuntian},
booktitle = {The Fortieth Annual Conference on Neural Information Processing Systems},
year = {2026},
url = {https://arxiv.org/abs/2607.02512}
}Compile by Training: Turning Natural-Language Specifications into Local Neural Functions
EMNLP 2026 System Demonstrations · Preprint
@inproceedings{deng-etal-2026-compile,
title = {{Compile by Training: Turning Natural-Language Specifications into Local Neural Functions}},
author = {Deng, Yuntian and Nie, Pengyu and Shieber, Stuart},
editor = {Agrawal, Sweta and Abad, Alberto},
booktitle = {Proceedings of the 2026 Conference on Empirical Methods in Natural Language Processing: System Demonstrations},
month = oct,
year = {2026},
address = {Budapest, Hungary},
publisher = {Association for Computational Linguistics},
url = {https://aclanthology.org/2026.emnlp-demos.78/},
doi = {10.18653/2026.emnlp-demos.78},
pages = {830--839},
ISBN = {979-8-89176-461-3}
}