Make one focused change that can be reviewed.
Contribute primitives, Plays, documentation, schemas, tests, or platform fixes through the real repository workflow. No points, fake rankings, or automatic-publish promise replaces maintainer review.
Local setup
Clone, install, validate
The public repository is an npm workspace. Run the source-controlled scripts instead of obsolete website CLI examples.
git clone https://github.com/frootai/frootai.git
cd frootai
npm install
# Validate canonical primitives
npm run validate:primitives
# Run repository consistency validation
npm run validate
# Run FAI Protocol conformance
npm run test:conformancePrimitive paths
Use the repository scaffolder
Agent
agents/*.agent.mdA scoped specialist with explicit tools, boundaries, and compatible architecture context.
node scripts/scaffold-primitive.js agentInstruction
instructions/*.instructions.mdRepository guidance with description and an applyTo glob.
node scripts/scaffold-primitive.js instructionSkill
skills/<name>/SKILL.mdReusable procedure whose name matches its folder and whose steps are testable.
node scripts/scaffold-primitive.js skillHook
hooks/<name>/hooks.jsonLifecycle automation with a valid event and an existing script.
node scripts/scaffold-primitive.js hookPull-request workflow
From branch to maintainer review
CI can validate structure and tests. It does not replace review or guarantee publication to every channel.
Fork and branch
Create a focused `feat/*`, `fix/*`, or `docs/*` branch. Never push directly to main.
Scaffold or edit
Use the repository scaffold script for primitives, or make a bounded change to an existing artifact.
Validate locally
Run primitive validation, consistency checks, and the tests relevant to the touched area.
Open a PR
Explain behavior, evidence, risk, validation, and any remaining limitations.
Address review
Work with maintainers and keep the branch focused until required checks pass.
Before opening a PR
A reviewable change has evidence
- File and folder names follow the repository convention.
- Required frontmatter or JSON fields are present and parse correctly.
- No secrets, API keys, tokens, or connection strings are committed.
- WAF and FAI Protocol claims are supported by the artifact, not only prose.
- Documentation describes setup, behavior, boundaries, and validation.
- Relevant tests and generation checks pass locally.
Ready to contribute?