[FEATURE] Let a hosted session push to the wiki of each repository
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
Preflight Checklist
- [x] I have searched existing requests and this feature hasn't been requested yet
- [x] This is a single feature request (not multiple features)
Problem Statement
A hosted Claude Code session (Claude Code on the web) cannot push to a GitHub wiki. This blocks each workflow that keeps documentation or agent memory in a wiki.
The cause is an authorization rule in the git proxy:
- A hosted session holds no GitHub token. A local git proxy authorizes each git operation and adds a credential to it. The proxy authorizes operations only for repositories in the session's authorized set.
- GitHub keeps a wiki in a separate git repository named
<owner>/<repo>.wiki.git. This name matches nothing in the authorized set. The proxy treats the wiki as a foreign repository and blocks the push:
````
remote: access denied by the git proxy: <owner>/<repo>.wiki is not in this
session's authorized repository set, so the proxy will not inject a
credential for it. To fix, add the repository to the session's sources.
fatal: unable to access 'https://github.com/<owner>/<repo>.wiki.git/':
The requested URL returned error: 403
- The push never reaches GitHub. The credential is not the problem. GitHub accepts a repository's token for git operations on that repository's wiki. The session's token for
<owner>/<repo>is valid for the wiki. - The error message tells the user to add the wiki to the session's sources. This is not possible. The GitHub API does not show a wiki as a repository, and the
add_repotool finds repositories through the API:
````
add_repo: repository "<owner>/<repo>.wiki" was not found on github.com, or
this session's GitHub credential doesn't have access to it. Check that the
owner/repo are correct (e.g. "anthropics/claude-code", not a path inside a
monorepo). Detail: you don't have access to <owner>/<repo>.wiki
No user action can enable wiki pushes today. Read operations mask the problem: the proxy passes unauthenticated clones and pulls of a public wiki, so the user sees the failure only at the first push.
Proposed Solution
Change the proxy's repository match rule: map <owner>/<repo>.wiki to <owner>/<repo>. When a repository is in a session's authorized set, authorize its wiki at the same access level.
This matches GitHub's own permission model. A wiki has no permission list of its own. A user with write access to a repository can edit its wiki. The change gives a session no more access than GitHub gives the same credential.
The change is small:
- The credential needs no change. GitHub accepts a repository's installation token for git operations on its wiki. GitHub Actions that sync wikis push with the default
GITHUB_TOKENtoday. - A wiki has no API. Only the git proxy needs the change.
- A read-only session gets read-only wiki access.
Alternative Solutions
- Add the wiki with
add_repo. This fails with the error above. The GitHub API does not show a wiki. - Push through CI. Commit the wiki content to the main repository. A workflow with its own token pushes it to the wiki. This works, but each wiki write waits for a CI run, and each team must build the workflow.
- Supply a personal token in the session. The proxy manages all credentials and does not accept this. That rule is correct.
Priority
High - Significant impact on productivity
Feature Category
Other
Use Case Example
- A team runs Claude Code agents in hosted sessions with push access to
<owner>/<repo>. - The team keeps shared agent memory in that repository's wiki: session summaries, status boards, decision logs, runbooks.
- An agent completes a session, clones the wiki, edits a page, and pushes. The push fails with the 403 error above. The container is temporary, so the findings are lost without the CI workaround.
- With this feature, the push succeeds with the access the session already has.
Additional Context
- GitHub serves a wiki as a git repository at
https://github.com/OWNER/REPO.wiki.git. It has no API. Its permissions come from the parent repository. - The proxy status endpoint (
/__agentproxy/status) records no relay failure for the denied push. The network policy permits the connection. The proxy denies the push before it leaves the session. - Issues #76248 and #80766 report denied pushes to the parent repository, with the same "authorized repository set" text. This request covers the wiki case, which no configuration can remedy today.