Ann Catherine Jose's Avatar

Ann Catherine Jose

@annjose.com

Hands-On Tech Enthusiast. Software Builder. Full-Stack Developer. Lifelong Learner. Loves tech, math and music.

187
Followers
183
Following
239
Posts
13.12.2023
Joined
Posts Following

Latest posts by Ann Catherine Jose @annjose.com

Post image

The @figma.com MCP server now supports a full roundtrip workflow from VS Code! Bring Figma designs into code, then capture your rendered UI back to the Figma canvas as editable frames.

Join us for a special livestream tomorrow at 9:30 am PT to see it live in action: youtube.com/live/O1i-Te7...

09.03.2026 19:52 πŸ‘ 16 πŸ” 3 πŸ’¬ 2 πŸ“Œ 0

Published a new skill: prompt-review

It audits any prompt against Claude's official best practices - clarity, context, examples, structure. Outputs a scored review and a revised prompt. πŸ”₯

It's part of my collection of agentic coding tools. Open source. Ready to use now!

github.com/annjose/agen...

02.03.2026 00:45 πŸ‘ 2 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

We often hear "AI is like a junior / intern" as if they're just eager but dumb. It always felt off coz juniors are usually smarter than we credit.

I like this framing in Claude docs:
> Think of Claude as a brilliant but new employee who lacks context on your norms and workflows

The model context πŸ’―

02.03.2026 00:04 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Played around with the new Nano Banana 2 and updated my avatar with an image it created.

I selected a pencil sketch theme, uploaded my color profile photo, and it generated this version. Pretty impressive.

blog.google/innovation-a...

26.02.2026 17:27 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Whenever I go to a web conference I like to see who begins eating their complimentary lunch first.

I call this time to first bite.

24.02.2026 16:39 πŸ‘ 68 πŸ” 3 πŸ’¬ 5 πŸ“Œ 2

NanoClaw github.com/qwibitai/nan...

24.02.2026 23:40 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Ideas were cheap. Not anymore.πŸ”₯

Coding agents have made it ridiculously easy to start building on any idea, reduced the friction to write code, super easy update it. You can bring ideas to life easier and faster than ever before.πŸ’ͺ

So the most valuable asset is the idea. What a time to be alive!

21.02.2026 16:22 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

I found pi to be pretty good. It built a Readwise cline using Codex - fully functional. It is transparent about token usage in every request. I also like its explanations in the 'thinking' mode. My only worry is that it runs in YOLO mode. In one instance, it rewrote git commit history to fix a bug.πŸ˜₯

20.02.2026 00:17 πŸ‘ 1 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Here's my full analysis:

  ---
  1. Project Understanding

  1.1 Purpose, Architecture, Major Features

  Purpose: Canopy is a self-hosted read-it-later and knowledge management app (a personal Readwise Reader clone). It's a single-user
  app for ann.jose@gmail.com, deployed entirely on Cloudflare infrastructure at canopy.annjose.com.

  Architecture:
  - Monorepo β€” pnpm workspaces + Turborepo with two active packages:
    - @canopy/web (apps/web) β€” Next.js 15 App Router, the entire app
    - @canopy/shared (packages/shared) β€” shared types & constants
  - Runtime β€” Cloudflare Workers via opennextjs-cloudflare adapter
  - Database β€” Cloudflare D1 (SQLite), 3 migrations applied (documents, tags/notes/highlights, feeds)
  - Storage β€” Cloudflare R2 for article HTML, thumbnails, future EPUB/PDF originals
  - Auth β€” Cloudflare Access (Zero Trust JWT verification, bypassed on localhost)
  - State management β€” SWR for server data, React Context (AppShellContext) for UI state (theme, panel visibility, dialogs, selected
  document)
  - UI β€” Three-panel layout (sidebar 240px | main flex | right panel 320px), responsive down to mobile with Sheet overlays. shadcn/ui
  primitives (Dialog, Command, Toast), Lucide icons, Tailwind CSS v4.

  Major implemented features:
  - Save articles by URL with content extraction (Mozilla Readability + linkedom)
  - Three-panel layout: sidebar navigation, document list with status tabs (inbox/reading/later/archive), right panel (Info + Notebook
   tabs)
  - Clean reader view with font size controls, ToC, reading progress persistence, prev/next navigation
  - Vim-style keyboard shortcuts (single-key + chord bindings like g h) with help modal
  
  - RSS feeds: subscribe by URL (with auto-discovery), feed polling, OPML import, folder grouping, edit/delete feeds, mark-all-read,
  feed titles on document rows
  - Dark mode / light mode toggle
  - Mobile responsive layout with drawer panels

Here's my full analysis: --- 1. Project Understanding 1.1 Purpose, Architecture, Major Features Purpose: Canopy is a self-hosted read-it-later and knowledge management app (a personal Readwise Reader clone). It's a single-user app for ann.jose@gmail.com, deployed entirely on Cloudflare infrastructure at canopy.annjose.com. Architecture: - Monorepo β€” pnpm workspaces + Turborepo with two active packages: - @canopy/web (apps/web) β€” Next.js 15 App Router, the entire app - @canopy/shared (packages/shared) β€” shared types & constants - Runtime β€” Cloudflare Workers via opennextjs-cloudflare adapter - Database β€” Cloudflare D1 (SQLite), 3 migrations applied (documents, tags/notes/highlights, feeds) - Storage β€” Cloudflare R2 for article HTML, thumbnails, future EPUB/PDF originals - Auth β€” Cloudflare Access (Zero Trust JWT verification, bypassed on localhost) - State management β€” SWR for server data, React Context (AppShellContext) for UI state (theme, panel visibility, dialogs, selected document) - UI β€” Three-panel layout (sidebar 240px | main flex | right panel 320px), responsive down to mobile with Sheet overlays. shadcn/ui primitives (Dialog, Command, Toast), Lucide icons, Tailwind CSS v4. Major implemented features: - Save articles by URL with content extraction (Mozilla Readability + linkedom) - Three-panel layout: sidebar navigation, document list with status tabs (inbox/reading/later/archive), right panel (Info + Notebook tabs) - Clean reader view with font size controls, ToC, reading progress persistence, prev/next navigation - Vim-style keyboard shortcuts (single-key + chord bindings like g h) with help modal - RSS feeds: subscribe by URL (with auto-discovery), feed polling, OPML import, folder grouping, edit/delete feeds, mark-all-read, feed titles on document rows - Dark mode / light mode toggle - Mobile responsive layout with drawer panels

2. Files Used

  Context-provided (from system/CLAUDE.md)

  - /Users/ann/dev/canopy-reader/CLAUDE.md

  Explicitly read

  β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”
  β”‚                                File                                 β”‚                  How                   β”‚
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
  β”‚ AGENTS.md                                                           β”‚ Direct Read                            β”‚
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
  β”‚ docs/plans/phase-1-progress.md                                      β”‚ Direct Read                            β”‚
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
  β”‚ docs/canopy-spec.md                                                 β”‚ Direct Read                            β”‚
  β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€
  β”‚ Root directory listing (ls -la)                                     β”‚ Bash

2. Files Used Context-provided (from system/CLAUDE.md) - /Users/ann/dev/canopy-reader/CLAUDE.md Explicitly read β”Œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”¬β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β” β”‚ File β”‚ How β”‚ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚ AGENTS.md β”‚ Direct Read β”‚ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚ docs/plans/phase-1-progress.md β”‚ Direct Read β”‚ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚ docs/canopy-spec.md β”‚ Direct Read β”‚ β”œβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”Όβ”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€β”€ β”‚ Root directory listing (ls -la) β”‚ Bash

Output from Claude with Opus - it listed CLAUDE.md and showed the files along with the tools it used - 'Explore agent' vs Read vs Bash tools.

Total: ~65 source files read across 3 parallel exploration agents + 4 direct reads.

✻ Cooked for 4m 40s

17.02.2026 16:14 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
1. Project Understanding

 ### 1.1 Purpose, Architecture, Major Features

 Canopy is a self-hosted read-it-later and knowledge management app (a Readwise Reader
 alternative) for a single user (ann.jose@gmail.com), deployed at canopy.annjose.com.

 Architecture:
 - Monorepo (pnpm workspaces + Turborepo) with two active packages: @canopy/web (Next.js 15 App
 Router) and @canopy/shared (types/constants)
 - Backend: Next.js API routes running on Cloudflare Workers via opennextjs-cloudflare
 - Database: Cloudflare D1 (SQLite) with 3 migration files
 - Storage: Cloudflare R2 for article HTML, files, thumbnails
 - Auth: Cloudflare Access (Zero Trust, single user)
 - Client state: SWR for data fetching
 - UI: Tailwind CSS v4 + shadcn/ui primitives + Radix + Lucide icons

 Major features implemented:
 - Save articles by URL with content extraction (Mozilla Readability + linkedom)
 - Three-panel layout (sidebar / document list / right panel) Γ  la Readwise Reader
 - Document lifecycle: Inbox β†’ Reading β†’ Later β†’ Archive, plus favorites + soft-delete trash
 - Clean reader view with ToC, font size, progress tracking, prev/next navigation
 - Tags: create/rename/merge/delete, per-document tagging, filter by tag
 - Highlights: text selection in reader β†’ colored highlights, inline rendering, notes on
 highlights
 - Document notes: one freeform note per document
 - Notebook panel: unified view of tags + note + highlights with markdown export
 - RSS feeds: subscribe, auto-discover, poll, OPML import, folder grouping, mark-all-read
 - Vim-style keyboard shortcuts throughout + help modal
 - Command palette search
 - Dark mode
 - Mobile responsive layout

 ### 1.2 Current Implementation Progress

1. Project Understanding ### 1.1 Purpose, Architecture, Major Features Canopy is a self-hosted read-it-later and knowledge management app (a Readwise Reader alternative) for a single user (ann.jose@gmail.com), deployed at canopy.annjose.com. Architecture: - Monorepo (pnpm workspaces + Turborepo) with two active packages: @canopy/web (Next.js 15 App Router) and @canopy/shared (types/constants) - Backend: Next.js API routes running on Cloudflare Workers via opennextjs-cloudflare - Database: Cloudflare D1 (SQLite) with 3 migration files - Storage: Cloudflare R2 for article HTML, files, thumbnails - Auth: Cloudflare Access (Zero Trust, single user) - Client state: SWR for data fetching - UI: Tailwind CSS v4 + shadcn/ui primitives + Radix + Lucide icons Major features implemented: - Save articles by URL with content extraction (Mozilla Readability + linkedom) - Three-panel layout (sidebar / document list / right panel) Γ  la Readwise Reader - Document lifecycle: Inbox β†’ Reading β†’ Later β†’ Archive, plus favorites + soft-delete trash - Clean reader view with ToC, font size, progress tracking, prev/next navigation - Tags: create/rename/merge/delete, per-document tagging, filter by tag - Highlights: text selection in reader β†’ colored highlights, inline rendering, notes on highlights - Document notes: one freeform note per document - Notebook panel: unified view of tags + note + highlights with markdown export - RSS feeds: subscribe, auto-discover, poll, OPML import, folder grouping, mark-all-read - Vim-style keyboard shortcuts throughout + help modal - Command palette search - Dark mode - Mobile responsive layout ### 1.2 Current Implementation Progress

### 1.3 Interesting Findings, Risks, Inconsistencies & Notes

 1. Spec inconsistency: canopy-spec.md mentions the Cloudflare adapter as
 @cloudflare/next-on-pages or opennextjs-cloudflare, but the project rules and actual
 implementation use opennextjs-cloudflare exclusively. The spec hasn't been updated to remove the
 old reference.
 2. No tests: The repo has zero test files. The repo-structure doc says "testing will be added in
 a dedicated pass" but this hasn't happened after 3 phases. As features accumulate, retroactive
 test coverage becomes harder.
 3. No automated cron for RSS: Feed polling is API-route-based only (POST /api/feeds/poll). The
 cron trigger in wrangler.toml is commented out. Feeds must be polled manually or via an external
 trigger β€” there's no automatic background polling yet.
 4. Known bugs tracked in phase-last-defer.md: The Save button doesn't work in reader view, and
 there's a wishlist item for default images when no OG image exists.
 5. Local D1 data exists: The .wrangler/state/ directory has a SQLite database and ~24 R2 blobs,
 indicating active local development/testing with real content.
 6. Tag slug vs. name duality: Tags store both a display name (freeform) and a slug (kebab-case
 for URLs). This is a thoughtful decision but adds complexity β€” the spec originally said tags are
 just kebab-case name, so this evolved during implementation.
 

 ### 1.4 Assumptions I Made

 - I assumed the .next/ and .open-next/ directories are gitignored (they're build artifacts); I
 didn't verify by reading .gitignore.
 - I assumed pnpm build and pnpm typecheck currently pass, based on the progress docs saying Phase
 3 is complete with a production build verified.
 - I did not read individual source files (components, API routes, lib modules) β€” my assessment of
 feature completeness is based solely on the progress tracking docs, file listing, and spec. The
 actual implementation quality/correctness is unverified.

### 1.3 Interesting Findings, Risks, Inconsistencies & Notes 1. Spec inconsistency: canopy-spec.md mentions the Cloudflare adapter as @cloudflare/next-on-pages or opennextjs-cloudflare, but the project rules and actual implementation use opennextjs-cloudflare exclusively. The spec hasn't been updated to remove the old reference. 2. No tests: The repo has zero test files. The repo-structure doc says "testing will be added in a dedicated pass" but this hasn't happened after 3 phases. As features accumulate, retroactive test coverage becomes harder. 3. No automated cron for RSS: Feed polling is API-route-based only (POST /api/feeds/poll). The cron trigger in wrangler.toml is commented out. Feeds must be polled manually or via an external trigger β€” there's no automatic background polling yet. 4. Known bugs tracked in phase-last-defer.md: The Save button doesn't work in reader view, and there's a wishlist item for default images when no OG image exists. 5. Local D1 data exists: The .wrangler/state/ directory has a SQLite database and ~24 R2 blobs, indicating active local development/testing with real content. 6. Tag slug vs. name duality: Tags store both a display name (freeform) and a slug (kebab-case for URLs). This is a thoughtful decision but adds complexity β€” the spec originally said tags are just kebab-case name, so this evolved during implementation. ### 1.4 Assumptions I Made - I assumed the .next/ and .open-next/ directories are gitignored (they're build artifacts); I didn't verify by reading .gitignore. - I assumed pnpm build and pnpm typecheck currently pass, based on the progress docs saying Phase 3 is complete with a production build verified. - I did not read individual source files (components, API routes, lib modules) β€” my assessment of feature completeness is based solely on the progress tracking docs, file listing, and spec. The actual implementation quality/correctness is unverified.

2. Files Read

 ### [context-provided]

 These were injected into my system prompt/context automatically:
 - AGENTS.md (project context / rules β€” provided as system instructions)

 ### [explicitly-read]

 Files I actively read using the read tool or bash:
 1. docs/canopy-spec.md β€” full product specification
 2. docs/repo-structure.md β€” monorepo layout and conventions
 3. docs/plans/phase-1-progress.md β€” Phase 1 implementation status
 4. docs/plans/phase-2-progress.md β€” Phase 2 implementation status
 5. docs/plans/phase-3-rss-feeds.md β€” Phase 3 plan + progress (combined)
 6. docs/plans/phase-last-defer.md β€” deferred items / known bugs
 7. docs/decisions.md β€” design decisions log
 8. packages/shared/src/types.ts β€” shared TypeScript types
 9. apps/web/wrangler.toml (first 30 lines) β€” Cloudflare bindings config
 10. apps/web/package.json (first 30 lines) β€” dependencies and scripts

 I also ran find commands to get the full file tree.

 ### [did NOT read]

 - All source code files in apps/web/src/ (~50+ files): components, hooks, lib modules, API
 routes, pages, CSS
 - docs/plans/phase-1-foundation.md and docs/plans/phase-2-tags-highlight.md (detailed plans β€” I
 read the progress files instead)
 - docs/schema.sql (full SQL reference schema)
 - migrations/*.sql (individual migration files)
 - scripts/migrate.sh
 - Config files: turbo.json, root package.json, root tsconfig.json, pnpm-workspace.yaml,
 apps/web/tsconfig.json, apps/web/next.config.ts, apps/web/tailwind.config.ts,
 apps/web/open-next.config.ts, apps/web/postcss.config.mjs, apps/web/env.d.ts,
 apps/web/components.json
 - packages/shared/src/constants.ts, packages/shared/src/index.ts
 - README.md
 - .claude/settings.local.json
 - All build output in .next/, .open-next/, .turbo/, .wrangler/

2. Files Read ### [context-provided] These were injected into my system prompt/context automatically: - AGENTS.md (project context / rules β€” provided as system instructions) ### [explicitly-read] Files I actively read using the read tool or bash: 1. docs/canopy-spec.md β€” full product specification 2. docs/repo-structure.md β€” monorepo layout and conventions 3. docs/plans/phase-1-progress.md β€” Phase 1 implementation status 4. docs/plans/phase-2-progress.md β€” Phase 2 implementation status 5. docs/plans/phase-3-rss-feeds.md β€” Phase 3 plan + progress (combined) 6. docs/plans/phase-last-defer.md β€” deferred items / known bugs 7. docs/decisions.md β€” design decisions log 8. packages/shared/src/types.ts β€” shared TypeScript types 9. apps/web/wrangler.toml (first 30 lines) β€” Cloudflare bindings config 10. apps/web/package.json (first 30 lines) β€” dependencies and scripts I also ran find commands to get the full file tree. ### [did NOT read] - All source code files in apps/web/src/ (~50+ files): components, hooks, lib modules, API routes, pages, CSS - docs/plans/phase-1-foundation.md and docs/plans/phase-2-tags-highlight.md (detailed plans β€” I read the progress files instead) - docs/schema.sql (full SQL reference schema) - migrations/*.sql (individual migration files) - scripts/migrate.sh - Config files: turbo.json, root package.json, root tsconfig.json, pnpm-workspace.yaml, apps/web/tsconfig.json, apps/web/next.config.ts, apps/web/tailwind.config.ts, apps/web/open-next.config.ts, apps/web/postcss.config.mjs, apps/web/env.d.ts, apps/web/components.json - packages/shared/src/constants.ts, packages/shared/src/index.ts - README.md - .claude/settings.local.json - All build output in .next/, .open-next/, .turbo/, .wrangler/

Output from pi with Opus - this was the best so far.

17.02.2026 16:14 πŸ‘ 4 πŸ” 0 πŸ’¬ 3 πŸ“Œ 0
Preview
This is a This is a . GitHub Gist: instantly share code, notes, and snippets.

A prompt to get an overview of a codebase makes the agent list the files they actually read vs. what was in context.

In my exploration so far, this is the version works that gives meaningful info without burning too many tokens.

gist.github.com/annjose/bc26...

pi and Claude output below:

17.02.2026 16:14 πŸ‘ 3 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0

things you can do while waiting for the agent to implement what you asked for:
1. stretch back and legs
2. 10 squats, 10 push-ups, 10 lunges
3. drink water
4. walk around
5. read
6. maybe color, knit??

Now I can do what I have been trying (and failing) to do - take breaks between coding sessions!

16.02.2026 18:34 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Current coding workflow with 4 terminal windows:

#1: pi coding agent with Codex for most coding tasks
#2: Claude Code with Opus for big features that need detailed plan
#3: OpenCode with Kimi 2.5 Free - ask trivial questions, brainstorm small ideas
#4: Runs commands build, deploy

So far, so good!πŸš€

16.02.2026 07:34 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Preview
GitHub - annjose/agentic-coding: A repository to collect good specs, plans, AGENTS files and share with people A repository to collect good specs, plans, AGENTS files and share with people - annjose/agentic-coding

I have been revamping many of my projects with agentic coding. I kept using the same prompts to scan repos, prep them and generate docs for agents.

So I packaged that workflow into a new skill: agentify-repo

You can run it from any repo. Added a few plans and specs too!

github.com/annjose/agen...

15.02.2026 20:12 πŸ‘ 0 πŸ” 0 πŸ’¬ 2 πŸ“Œ 0
Preview
GitHub Innovation Graph Explore a universe of data about how the world is building software together on GitHub.

I love this!

data nerds, pls enjoy

12.02.2026 19:45 πŸ‘ 43 πŸ” 1 πŸ’¬ 2 πŸ“Œ 0
Preview
Gemini 3 Deep Think New from Google. They say it's "built to push the frontier of intelligence and solve modern challenges across science, research, and engineering". It drew me a really good SVG of …

Genuinely very impressed by the SVG of a pelican riding a bicycle I just got out of Google's new Gemini 3 Deep Think model simonwillison.net/2026/Feb/12/...

12.02.2026 18:16 πŸ‘ 257 πŸ” 20 πŸ’¬ 19 πŸ“Œ 4
Preview
I Improved 15 LLMs at Coding in One Afternoon. Only the Harness Changed. Cross-posted from X / @_can1357 In fact only the edit tool changed. That’s it. 0x0: The Wrong Question The conversation right now is almost entirely about …

I had the hypothesis that harness is (as or) more important than the model, but couldn't prove it. Here is the proof!

An excellent article. Must read.

> The model is the moat. The harness is the bridge. Burning bridges just means fewer people bother to cross.

blog.can.ac/2026/02/12/t...

12.02.2026 16:50 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

This is great! I was reading through the docs yesterday (the older version) and it was hard to understand. The relation between publication and document itself was confusing.

The new docs looks clean, simple and expand these concepts really well. Thank you!

11.02.2026 05:26 πŸ‘ 3 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

We are still there in the Show HN main page - after 9 hrs of posting! πŸ”₯

cc @georgeck.me !

news.ycombinator.com/show

11.02.2026 01:59 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Awesome! Looks like this is a pattern as more apps are becoming scriptable. Coding agents are driving this trend, perhaps.

10.02.2026 20:42 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Show | Hacker News

We hit the HN home page for some time! πŸŽ‰

And we are still there on the Show HN main page. Hope it stays there till more people see it πŸ”₯.

news.ycombinator.com/show

10.02.2026 20:00 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 1
Preview
Ask HN: What are you working on? (February 2026) | HN Companion 304 points by david927 | 656 comments | HN Companion AI summary

We launched HN Companion hncompanion.com, the standalone version of the browser extension that
@georgeck.me and I built a year ago πŸš€.

Read HN better with Vim keys and HN-aware summaries that understand thread hierarchy and up/down votes.

Here is a sample post: app.hncompanion.com/item?id=4693...

10.02.2026 19:55 πŸ‘ 1 πŸ” 1 πŸ’¬ 1 πŸ“Œ 0

Here is a spec that follows the suggestions in the post:

github.com/annjose/agen...

09.02.2026 20:00 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Here is a spec that follows the suggestions in the post. Walk the talk, right?

github.com/annjose/agen...

09.02.2026 19:59 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

Usually we say...
Trust, but verify

Now with coding agents, we say...
Steer, but verify

09.02.2026 18:25 πŸ‘ 0 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0
Agentic Coding In Practice Β· Reflections How I build features with AI agents after two years of agentic coding

Wrote a post on what I learned from doing agentic coding.

Not a playbook. Not "best practices".

Just what's helping me build things right now - after shipping apps like HN Companion, Pomodoro Flow, Beast Mode workout tracker.πŸš€

Hope it helps you too. LearnπŸ‘TeachπŸ‘ Learn

annjose.com/post/agent-c...

09.02.2026 00:28 πŸ‘ 2 πŸ” 1 πŸ’¬ 2 πŸ“Œ 1

It has been a while since I wrote about agents, so here are my latest thoughts. I have a lot less time than I did eight months ago, so this is far more informal. crawshaw.io/blog/eight-m...

07.02.2026 19:23 πŸ‘ 26 πŸ” 4 πŸ’¬ 2 πŸ“Œ 1

Wow! Fascinated by the concept of Digital Twins - test the heck out of your apps by building clones of critical Saas dependencies. No rate limit issues. πŸ’―

This spec in Attractor repo is mind blowing. 2000 lines of just spec - no code - to build unified API for all LLMs.πŸ”₯

github.com/strongdm/att...

07.02.2026 16:47 πŸ‘ 4 πŸ” 0 πŸ’¬ 1 πŸ“Œ 0
Ann Learning A small corner of the ATmosphere where I jot down what I learn every hour / day / week.

Published a new blog in the ATmosphere - pckt.blog/b/ann-learning. I want this to be casual than the main blog annjose.com.
Share anything that I learn, whatever comes to mind.

The first post:

Run Claude and OpenCode with Qwen3-Coder
pckt.blog/b/ann-learni...

07.02.2026 02:26 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0

You can do the same with OpenCode opencode.ai too.

1. Create ollama API key ollama.com/settings/keys
2. Launch OpenCode
3. Run `/connect`, choose Ollama Cloud provider
4. Choose any model, eg: qwen3-coder:480b
5. Code away! πŸ”₯

It did well in basic coding. Want to try using this for smaller tasks.

07.02.2026 01:57 πŸ‘ 1 πŸ” 0 πŸ’¬ 0 πŸ“Œ 0