1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
|
# Hutch TODO
## Claude Code, Codex, & Mistral Prompting Notes
- **Always start a new session with the project context block** (see
hutch-ios-prompts.md prompt 0) so the agent knows the API conventions.
- **Keep prompts short and specific.** Long prompts waste context. One bug or
feature per prompt. Paste console output and error messages directly instead
of describing them.
- **When a fix fails twice, ask the agent to print raw state first** (raw API
response, current file contents, exact variable values) before attempting
another fix. Blind retries consume context without progress.
- **Never paste full file contents into the prompt.** Ask the agent to read
the file itself using its file tools.
- **Batch only tightly related changes.** Unrelated changes in one prompt
increase the chance of partial failure and wasted context on rollback.
## Features
- **Exact repository lookup**: Since public repository discovery/search is not
exposed in the public sr.ht API, add a manual `~owner/repo` lookup flow that
can open git.sr.ht or hg.sr.ht repositories directly.
- **paste.sr.ht tab**: Paste support. Endpoint:
https://paste.sr.ht/graphql. Show the authenticated user's pastes, allow
viewing individual pastes, and support creating new pastes. Required scope:
PASTES:RO for browsing, PASTES:RW for creation/editing.
- **lists.sr.ht tab**: Mailing list support. Endpoint:
https://lists.sr.ht/graphql. Show the authenticated user's mailing lists,
allow browsing email threads, and display individual emails as plain text.
Required scope: LISTS:RO.
- **pages.sr.ht tab**: Site management support. Endpoint:
https://pages.sr.ht/graphql. Show the authenticated user's published sites,
site metadata, publishing status, and access control where supported. This is
for managing Pages sites, not browsing public project discovery.
- **Donation page / IAP**: Add a donation/support page once the App Store /
StoreKit setup is ready.
## Out of Scope
- **Universal links** (e.g. tapping a git.sr.ht URL in Safari opens Hutch):
Requires Sourcehut to host an apple-app-site-association file on their
servers. This is outside our control. The hutch:// custom URL scheme works as
a fallback for links we generate ourselves.
- **Push notifications for builds and tickets**: The sr.ht API only supports
server-side webhooks (HTTP POST to a URL you control). Delivering push
notifications to iOS would require a backend relay server to receive webhooks
and forward them via APNs. Out of scope for a personal app with no backend.
- **Contribution activity / GitHub-style heatmap**: No aggregate contributions
endpoint exists in the sr.ht GraphQL API. Computing this would require
paginating every repository's full commit log and filtering by author --
extremely slow and not practical.
- **Explore / search (hub.sr.ht)**: The public hub.sr.ht GraphQL API does not
expose repository discovery/search or a projects feed comparable to
https://sr.ht/projects.
- **Pronouns on profile**: Not exposed in the meta.sr.ht GraphQL schema. The
field exists in the web UI but is not available to external API clients.
- **Revoke personal access tokens**: The revokePersonalAccessToken mutation is
marked @internal in the meta.sr.ht schema and is not accessible to external
clients.
|