Settings → Integrations → GitHub → Connect, then authorise Annsa and pick a repository.
01Connect the repo
02The 9 signals Annsa reads
| Signal | Effect on the spec |
|---|---|
| File signatures | Exports, types, key functions and the import graph. Gates both Files to Touch and Codebase Context. |
.cursorrules / CLAUDE.md / CONTRIBUTING.md | Your AI coding conventions — specs name the right things and follow your rules, not generic best practice |
| Testing patterns | A sample test file, so "Done when" references your real framework and style |
| Directory structure | A compact file tree that validates suggested paths exist |
| Open issues | Semantically similar issues become a Heads Up section; omitted if none match |
| File relevance | Recently changed files surface first in Files to Touch |
| Tech stack | Detected framework and language — prevents mismatched suggestions |
| CI/CD + config | Real commands in "Done when" (npm run test:coverage, pytest backend/tests/) |
| README | Project overview — the fallback when no AI config files exist |
03The signal that matters most
File signatures gate both Files to Touch and Codebase Context. Without them the Codebase Context section is dropped entirely and file paths fall back to inference.
04Why grounding changes the spec
With GitHub connected, the prompt rule is explicit: specs may only reference files from the GitHub context — no invented paths. Codebase Context appears, covering architecture patterns, how to test, and how this team writes code.
Without it, the prompt infers paths from common project conventions, Codebase Context is omitted, and Files to Touch holds plausible guesses rather than verified paths.
05It follows your conventions
Annsa reads .cursorrules and CLAUDE.md before each spec — the same source of truth Cursor and Claude Code use. Specs name the right things ("add a useExportStream hook" rather than a vague description).
06It warns you about duplicate work
If semantically similar open issues exist, the spec gains a Heads Up section flagging the existing work. No matches, no section.
07What it never does
Annsa never changes your code — no commits, no pushes, no pull requests. The only thing it writes is a GitHub issue, on demand from a spec or automatically if you turn that on.
08Disconnecting
Settings → Integrations → Disconnect. Existing specs keep their file paths; new ones omit Files to Touch. See Working with Specs for the full spec structure.