Repository navigation
Add the proxy command line for agents in a terminal - #77
Draft
luisKisters wants to merge 2 commits into
Draft
luisKisters wants to merge 2 commits into
luisKisters wants to merge 2 commits into
Conversation
added 2 commits
October 13, 2026 20:54
TickTick's tasks through its Open API v1, signed in with a personal API token pasted on a form like the mailbox's, with Test connection. The token is checked by listing the account's lists and stored encrypted; a new connection gives agents Read tasks only. One nested collection: the Inbox and the lists at the top, the open tasks inside each (project:<list>, task:<list>:<task>). Title, notes and priority are written, an edit sending only what changed; dates, tags and checklists are shown only. Completing is a command of its own on open tasks, needing Complete tasks, so editing never completes a task. Tasks are never deleted. The Open API client maps 401 to credentials_rejected without keeping TickTick's answer (it repeats the token), 404 to not_found and 429 to a new rate_limited error, and never retries. Docs page, catalog logo, LogoDock tile and AGENTS.md updated.
packages/cli (@proxy/cli, bin proxy, on Bun): login, logout, connections, tools <connectionId>, run <connectionId> <tool> --params, help, each with --json. It signs in at /agent-auth/login like the agent pages and calls /api/agent/* with the agent cookie, kept in ~/.config/proxy/session.json (folder 0700, file 0600) with the origin and when it ends. Writes carry the server's own Origin so the CSRF guard stays on, redirects aren't followed, and a password only goes over HTTPS or plain HTTP to this machine. A refusal exits 1 with the api's message; a command used wrongly exits 2. Each request sends X-Proxy-Client: cli, and the agent side logs runs with it as via cli (migration v013_add_audit_via_cli), provenance only. The activity log says "from the command line". Docs page, root `bun run proxy` script, Dockerfile and AGENTS.md updated.
This branch has not been deployed
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Stacked on #76. This is opened from a fork, so it targets
mainand includes #76's commit. Review only the top commit,d28990e.Adds
proxy, a command line for agents with a terminal (Claude Code, Codex, Hermes). It works with every integration and goes through the same access checks and activity log as/mcp.packages/cli(@proxy/cli) calls the existing/agent-auth/loginand/api/agent/*routes.~/.config/proxy/session.json, with the folder at 0700 and the file at 0600.Origin, so CSRF checks stay on. Redirects are refused. Plain HTTP is allowed only for a server on the same machine.v013_add_audit_via_cliaddsclitoAuditVia. The CLI sendsX-Proxy-Client: cli, and the activity log shows "from the command line". This only records where a request came from; it never affects access.bun run proxyscript, and the Dockerfile copying the CLI'spackage.jsonso the frozen lockfile matches. The Docker image build hasn't been tested.Checks: typecheck, test, lint and build pass. The migration applies, and
db:migrate:diffis clean.