Thank you for contributing.
This project is a CLI for registering AI agent identities on Solana via SATI and ERC-8004. Keep changes small, tested, and standards-compliant.
- Clone the repository.
- Initialize submodules:
git submodule update --init --recursive- Install dependencies:
pnpm install- Validate your environment:
pnpm check
pnpm buildpnpm check # type-check + lint (required after every code change)
pnpm build # production build
pnpm lint:fix # auto-fix formatting/lint where possible
pnpm agent:init
pnpm agent:publish
pnpm agent:publish:dry
pnpm agent:search
pnpm agent:info
pnpm agent:give-feedback- Use TypeScript and keep strict typing intact.
- Use
@solana/kitfor Solana interactions. Do not introduce@solana/web3.jsv1 imports. - For ERC-8004 registration validation, use SDK types/validators from
agent0-sdk. Do not add parallel custom schemas that can drift. - Keep CLI behavior automation-friendly (prefer explicit flags and predictable outputs).
- Keep user-facing error messages actionable.
Before opening a PR:
- Run
pnpm checkand ensure it passes. - Run
pnpm buildand ensure it passes. - If your change affects command behavior, run a manual CLI smoke test.
Recommended smoke test:
npx . init
npx . publish --network devnet --dry-runIf your change touches publishing or registry behavior, also test the non-dry-run flow on devnet.
Keep PRs focused and explain both what changed and why.
Include:
- Problem statement
- Approach
- Any tradeoffs or compatibility notes
- Validation steps and results
Suggested commit prefixes:
feat:fix:refactor:docs:chore:
docs/best-practices/is a git submodule. Do not directly edit vendored upstream content unless that is your explicit goal.- If you update submodule references, call it out clearly in your PR.
By contributing, you agree that your contributions are provided under the repository license (Apache-2.0).