Community
Contributing
nanostack is open source (Apache 2.0). Here's how to contribute.
Setup
bash
git clone https://github.com/garagon/nanostack.git
cd nanostack
./setupNo build step. If ./setup --help runs without errors, you're ready.
What to contribute
New skillsDomain-specific skills that compose with the core sprint workflowSkill improvementsBetter edge case handling, clearer instructions, missing scenariosGuard rulesNew block or warn rules in guard/rules.jsonbin/ scriptsBug fixes, new utility scripts for the artifact systemDocumentationGuides, examples, clarifications
Adding a skill
- Create a directory in
/skillswith your skill name - Add
SKILL.mdwith YAML frontmatter (nameanddescription) - Use
bin/save-artifact.shfor outputs - Use
bin/find-artifact.shto read previous phases - Include a "Next Step" section directing to the next skill
- Support intensity modes (
--quick,--standard,--thorough) if applicable
Adding guard rules
Each rule in guard/rules.json needs 5 properties:
json
{
"id": "G-029",
"pattern": "your-regex-pattern",
"category": "your-category",
"description": "What this blocks and why",
"alternative": "Safer command to suggest"
}Code standards
Shell scriptsPOSIX compatible unless bash-specific is requiredSkill instructionsDirect, concise, no marketing languageNo hardcoded pathsUse variables and relative pathsNo credentialsNever commit secrets, tokens or API keysPR scopeOne skill or fix per PR. Keep changes focused.
Pull request checklist
- Branch from
main - Verify
./setup --helpruns without errors - Test affected
bin/scripts - Confirm SKILL.md has proper frontmatter
- No hardcoded usernames, paths or credentials
- Descriptive PR title (verb-first, under 70 chars)