| name | linnet-contributor |
| description | This skill should be used when contributing code, docs, extensions, sinks, setup UX, or generated-site changes to the Linnet repository, especially when an AI agent needs to learn repo conventions before editing files. |
Linnet Contributor
Use this skill when you are editing the Linnet repository itself.
Do not use it as the main guide for "help me configure my repo or digest site" requests. For that, prefer skills/linnet-config-customization/SKILL.md.
Quick routing
Read the smallest relevant set before editing:
Repo-wide or docs changes
llms.txt
README.md or README_zh.md
superpowers/roadmap.md if the change might close tracked debt
Setup wizard or public-site changes
README.md or README_zh.md
setup-bridge/README.md
dev_docs/manual-config.md
astro/src/pages/setup/index.astro or astro/src/pages/setup/zh/index.astro
astro/src/components/wizard/
Extension work
extensions/llms.txt
extensions/README.md
extensions/_template/
- the target extension's code and
README.md
Sink work
sinks/llms.txt
sinks/README.md
sinks/_template/
- the target sink's code and
README.md
Read references/repo-map.md when you want a compact map instead of opening many files.
Repo rules to preserve
- Keep extensions as self-contained source plugins
- Keep sinks as optional delivery channels
- Keep secrets in environment variables or GitHub Actions secrets, never in committed YAML
- Keep the README focused on the user's mental model
- Put deeper implementation detail in docs that live near the relevant code
Editing checklist
If you change extensions
- Keep
fetch() free of LLM calls
- Keep
process() responsible for scoring, filtering, or summarisation
- Keep
render() focused on packaging data into a FeedSection
- Register the extension in
extensions/__init__.py
- Update tests and the extension's own docs
If you change sinks
- Keep credentials in environment variables or GitHub Actions secrets
- Keep non-secret behaviour under
sinks: in config/sources.yaml
- Register the sink in
sinks/__init__.py
- Update tests and sink-specific docs
If you change setup or docs
- Keep the setup wizard and README aligned
- Reflect current provider/secret behaviour accurately
- Update
llms.txt or skills if the agent guidance changed
- Remove obsolete references when a migration is complete
- Keep the GitHub App + bridge flow as the default onboarding path, and push PAT/manual steps into explicit fallback docs only
Validation
Run the smallest useful validation for the touched surface:
- Python/runtime:
PYTHONPATH=. pytest tests/ -q, python -m py_compile main.py
- Astro/site:
cd astro && npm run check, npm run build, node --test tests/githubDeploy.test.mjs tests/githubAuth.test.mjs
- Hygiene:
git diff --check
Done means
- the code or docs match current behaviour
- nearby user-facing docs are updated in the same pass
- no obsolete paths, files, or instructions remain because of your change
- the relevant checks pass, or you explicitly state what could not be verified