{"slug": "show-hn-porch-a-mac-menu-bar-work-log-for-claude-code-and-codex-sessions", "title": "Show HN: Porch – a Mac menu bar work log for Claude Code and Codex sessions", "summary": "Amone Labs released Porch, an open-source Mac menu bar app that summarizes Claude Code and Codex coding-agent sessions by project, day, week and month, tracking estimated time per task, blockers, tokens and API-equivalent cost. Porch requires an Apple Silicon Mac and either Claude Code or Codex installed and signed in, keeps session state, tokens and cost on the local machine, and sends summary data to Anthropic or OpenAI through the selected agent while sending anonymous usage events to PostHog unless disabled in Settings.", "body_md": "**An open-source work log for your coding agents.**\n\nA Mac app that summarizes your Claude Code and Codex work by project, day, week and month: what you did, where the time went, what got stuck.\n\n- **Summaries** — what you did each day, week and month, per project, with estimated time per task and what got stuck. Breaks over 10 minutes are left out and parallel work counts once; when the records don't show why something got stuck, the summary says so. Open work and blockers carry over until the records show them done.\n- **Notes and notifications** — summaries can also be saved as Markdown in a folder you pick, usually an Obsidian vault ([format](https://github.com/amone-labs/porch/blob/main/docs/design/note-format.md) ). Saving or rewriting a summary replaces its note, edits included, so keep your own notes elsewhere and link to the porch note from there. When an automatic summary finishes, a notification shows its one-line summary.\n- **Sessions** — Claude Code and Codex sessions on this Mac, whichever terminal or editor launched them, and which ones wait on you. The menu bar shows how many.\n- **Usage** — tokens and API-equivalent cost by project, model and tool, plus Claude and Codex 5-hour and weekly limits. API-equivalent cost is tokens times public API prices, not your subscription bill. Tokens porch spends writing summaries are not counted.\n\n1. Download **[Porch.dmg](https://getporch.pages.dev/Porch.dmg)** and move Porch to Applications.\n2. Open it and, under **Turn on session detection** , press**Turn on** . Your agent settings are backed up first and other tools' hooks are left alone. The next time you start Codex, approve the new hook so Codex sessions show up.\n3. Press **Get started** . On**Summary** , pick a day with recorded work and press**Make summary** .\n\nNeeds an Apple Silicon Mac. Summaries need [Claude Code](https://docs.claude.com/en/docs/claude-code) or [Codex](https://developers.openai.com/codex) installed and signed in; pick one under **Summary agent** in **Settings**. Claude limits need a Pro or Max plan and **Import Claude limits** turned on in **Settings**. To build from source, see [CONTRIBUTING.md](https://github.com/amone-labs/porch/blob/main/CONTRIBUTING.md#build-from-source).\n\nTurn on **Terminal command** in **Settings** to link `/usr/local/bin/porch` to the copy inside the app (it may ask for your password). The CLI reads the same records as the app.\n\n```\nporch now       # sessions and which ones wait on you (--json for scripts)\nporch today     # today's summary (--date, --md, --json, --refresh)\nporch week      # this week's summary (month for the month)\nporch usage     # tokens and cost as JSON\nporch limits    # Claude and Codex limits as JSON\nporch help      # every command\n```\n\nA summary that is not saved yet calls the model, so coding agents calling `porch` should stick to read-only commands such as `porch now --json`, `porch usage` and `porch today --no-llm --json`.\n\n- No porch account or server is needed for your work records. Session state, tokens and cost never leave your Mac, and the hook sends nothing.\n- Summaries, suggestions, blocker classification and the weekly evaluation send what they need to the model through the agent you pick: Claude Code (to Anthropic) or Codex (to OpenAI).\n- The app sends anonymous usage events to PostHog. Turn them off with **Send app usage events** in**Settings** .\n\nEverything the app reads, stores and sends, and what the website and download link count: [docs/privacy.md](https://github.com/amone-labs/porch/blob/main/docs/privacy.md).\n\n| Agent | Session status | Usage | Summaries | \n|---|---|---|---|\n| Claude Code | ✓ | ✓ | ✓ | \n| Codex | ✓ | ✓ | ✓ | \n\nEither agent writes summaries of both agents' records. Cost for models routed through OpenRouter is a lower bound based on the cheapest provider; models without a known price show tokens only. Want another agent? Open an issue with where it keeps its session records.\n\n- [docs/](https://github.com/amone-labs/porch/blob/main/docs/README.md) : state rules, decisions and design\n- [AGENTS.md](https://github.com/amone-labs/porch/blob/main/AGENTS.md) : build, test and repo rules, for people and coding agents\n- [CONTRIBUTING.md](https://github.com/amone-labs/porch/blob/main/CONTRIBUTING.md) ·[SECURITY.md](https://github.com/amone-labs/porch/blob/main/SECURITY.md)\n\n[AGPL-3.0-only](https://github.com/amone-labs/porch/blob/main/LICENSE). Copyright (C) 2026 amone-labs. To contribute, see [CONTRIBUTING.md](https://github.com/amone-labs/porch/blob/main/CONTRIBUTING.md).", "url": "https://wpnews.pro/news/show-hn-porch-a-mac-menu-bar-work-log-for-claude-code-and-codex-sessions", "canonical_source": "https://github.com/amone-labs/porch", "published_at": "2026-10-08 13:57:48+00:00", "updated_at": "2026-10-08 14:18:17.245598+00:00", "lang": "en", "topics": ["ai-agents", "developer-tools", "ai-tools", "ai-products"], "entities": ["Porch", "Amone Labs", "Claude Code", "Codex", "Anthropic", "OpenAI", "PostHog", "Obsidian"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/show-hn-porch-a-mac-menu-bar-work-log-for-claude-code-and-codex-sessions", "markdown": "https://wpnews.pro/news/show-hn-porch-a-mac-menu-bar-work-log-for-claude-code-and-codex-sessions.md", "text": "https://wpnews.pro/news/show-hn-porch-a-mac-menu-bar-work-log-for-claude-code-and-codex-sessions.txt", "jsonld": "https://wpnews.pro/news/show-hn-porch-a-mac-menu-bar-work-log-for-claude-code-and-codex-sessions.jsonld"}}