Skip to content

Docs: refresh README, promote make build, fix GitHub project scope#155

Merged
dhilgaertner merged 1 commit intomainfrom
feature/crow-154-docs-refresh
Apr 10, 2026
Merged

Docs: refresh README, promote make build, fix GitHub project scope#155
dhilgaertner merged 1 commit intomainfrom
feature/crow-154-docs-refresh

Conversation

@dhilgaertner
Copy link
Copy Markdown
Contributor

Closes #154

Summary

  • Promotes make build to the default Quick Start path (was walking users through ./scripts/build-ghostty.sh + swift build manually)
  • Corrects the GitHub auth guidance: the write project scope is required (not read:project) because IssueTracker.markInReview calls the updateProjectV2ItemFieldValue mutation — users following the old instructions hit INSUFFICIENT_SCOPES the first time a ticket moved to In Progress
  • Splits long reference material into a new docs/ directory so the README can focus on overview + getting started

New docs

File Covers
docs/getting-started.md Clone, make build (+ all Makefile targets), advanced/manual fallback, correct GitHub scopes, CLI permissions table (gh/glab/git/claude), all 9 mise.toml tasks, first-launch wizard aligned with Scaffolder.swift
docs/cli-reference.md Every subcommand from Packages/CrowCLI/Sources/CrowCLILib/Commands/*.swift — including the previously-missing setup, close-terminal, and the --managed/--command flags on new-terminal
docs/architecture.md Full 9-package tree, Sources/CrowCLI vs Packages/CrowCLI split, key components with file paths, markInReview data flow
docs/configuration.md File locations verified against AppSupportDirectory.swift, 4-state TerminalReadiness tied to CrowCore/Models/Enums.swift:41 and SessionListView.swift:325-372
docs/troubleshooting.md Build + runtime tables; new row for INSUFFICIENT_SCOPES pointing at IssueTracker.swift:691-692,768-769

README changes

  • Replaced manual build steps with make build
  • Replaced gh auth refresh -s read:project with gh auth refresh -s project,read:org,repo
  • Added a callout about read:project being insufficient
  • Moved Detailed Setup, Architecture, Configuration, CLI Reference, Development, and Troubleshooting sections into docs/
  • Left Features, Contributing, Releases, and License in place

CLAUDE.md changes

  • Added close-terminal to the Terminal Commands list
  • Added the --managed flag to new-terminal

Keeps the Manager-tab CLI reference in sync with Packages/CrowCLI.

Acceptance criteria from crow#154

  • README Quick Start uses make build as the primary build path
  • Makefile targets documented (table in docs/getting-started.md)
  • GitHub auth section lists correct scopes (repo, read:org, project) and exact gh auth refresh command
  • Troubleshooting note clarifying that read:project is insufficient
  • CLI tool permissions (gh, glab, git, claude) documented in one place
  • mise.toml tasks in docs match actual file (all 9 listed)
  • CLI reference matches Packages/CrowCLI source
  • Directory structure, file locations, session lifecycle, and terminal readiness verified against current code

Test plan

  • From a scratch clone, run just make build per the new Quick Start and confirm it produces .build/debug/CrowApp and .build/debug/crow
  • Run gh auth refresh -s project,read:org,repo and confirm gh auth status lists project (not read:project)
  • Move a ticket to In Progress via a session and confirm no INSUFFICIENT_SCOPES in [IssueTracker] stderr
  • Confirm every relative link from README.mddocs/*.md resolves in the rendered PR view
  • Spot-check crow <cmd> --help against docs/cli-reference.md for 2-3 subcommands (e.g. add-worktree, new-terminal, set-ticket)

🤖 Generated with Claude Code

Fixes crow#154. Promotes `make build` to the default build path in the
Quick Start, corrects the GitHub auth guidance (the write `project`
scope is required for IssueTracker's updateProjectV2ItemFieldValue
mutation — `read:project` is insufficient), and splits long reference
material into a new docs/ directory so the README can stay focused.

- docs/getting-started.md: make-first build flow with all Makefile
  targets, correct scopes (`project,read:org,repo`), CLI permissions
  table for gh/glab/git/claude, all 9 mise tasks
- docs/cli-reference.md: every subcommand from Packages/CrowCLI,
  including the previously-missing setup, close-terminal, and
  new-terminal --managed/--command flags
- docs/architecture.md: updated package tree, Sources/CrowCLI vs
  Packages/CrowCLI split, markInReview data flow
- docs/configuration.md: file locations verified against
  AppSupportDirectory.swift, 4-state TerminalReadiness tied to
  CrowCore/Models/Enums.swift and SessionListView rendering
- docs/troubleshooting.md: INSUFFICIENT_SCOPES row pointing at
  IssueTracker.swift:691-692,768-769
- README.md: slimmed to overview + Quick Start + docs links
- CLAUDE.md: added close-terminal and --managed flag to keep the
  Manager-tab CLI reference in sync with code

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
@dhilgaertner dhilgaertner requested a review from dgershman as a code owner April 10, 2026 14:40
@dhilgaertner dhilgaertner merged commit 9545761 into main Apr 10, 2026
1 check passed
@dhilgaertner dhilgaertner deleted the feature/crow-154-docs-refresh branch April 10, 2026 14:41
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Docs: refresh README and getting-started guide (make build, GitHub scopes including project write)

1 participant