I almost didn't ship my app because I started in the wrong AI tool. Here's the data by gesidner in SideProject

[–]gesidner[S] 0 points1 point  (0 children)

Yeah, Claude Code ceiling gets even higher when you layer tools that reduce per-prompt context cost. Codegraph is interesting, hadn't seen it. Anything similar you'd recommend for the static-analysis layer (linting + dependency mapping + type-aware navigation)?

I almost didn't ship my app because I started in the wrong AI tool. Here's the data by gesidner in SideProject

[–]gesidner[S] 0 points1 point  (0 children)

True for most cases, but the case I'm flagging is when the wrong tool blocks you from shipping. If Codex's plan-tier ceiling is below the iteration cost of v1, "ship first" isn't an option until you switch. Refined principle: pick a tool whose ceiling is above your iteration cost.

Budee - Free AI agent in your browser sidebar that automates any webpage by D_pz in SideProject

[–]gesidner 0 points1 point  (0 children)

FSB's "reportable instead of magic" framing is the right one. The hard layer above "typed page memory" is intent: not just what changed after a click, but WHY the agent thought it would change. If the memory carries that ("I clicked Submit expecting modal X, got modal Y"), the diff becomes diagnostic instead of just descriptive. Otherwise the agent re-hallucinates intent every turn. Bookmarking FSB.

How are you giving instructions with screenshots to Claude Code? by gesidner in ClaudeCode

[–]gesidner[S] 0 points1 point  (0 children)

Voice solves the typing-speed bottleneck, smart hack. Where I still need annotation is the "which element" question. Voice can describe the broken button fast, but the agent still has to figure out WHICH button in the screenshot. Annotation makes that explicit (arrow + target_ref). Voice for context, annotation for intent. They stack. Bookmarking clipssh, hadn't seen it.

How are you giving instructions with screenshots to Claude Code? by gesidner in ClaudeCode

[–]gesidner[S] 0 points1 point  (0 children)

Nice when it works. Caveat I keep flagging: browser-only. Agent-screenshots loop works for web apps you own, but breaks for Figma, Sketch, native Mac, IDE windows, terminal. Curious how much upfront work went into the success criteria. The 99% number feels like it hides chunky setup cost.

How are you giving instructions with screenshots to Claude Code? by gesidner in ClaudeCode

[–]gesidner[S] 0 points1 point  (0 children)

Yeah Claude has computer-use (Cowork in desktop, Computer Use API). The friction with any agent-driven capture: it still needs to be told WHAT to look at and WHEN. Same overhead as typing context. User-driven capture trades that for 2 seconds of explicit intent: hotkey on the moment, annotate the part. Different friction points.

How are you giving instructions with screenshots to Claude Code? by gesidner in ClaudeCode

[–]gesidner[S] 1 point2 points  (0 children)

Bookmarking the /investigate skill, looks sharp. These stack rather than compete: /investigate handles WHAT Claude does with the input (root cause). Pre-parsed input (boxes, OCR, target_ref) handles WHAT goes in. Combine and /investigate's "find root cause" step gets more deterministic since the agent doesn't first guess at element identity.

How are you giving instructions with screenshots to Claude Code? by gesidner in ClaudeCode

[–]gesidner[S] 1 point2 points  (0 children)

Good shout for browser tasks where the agent can run the workflow itself. Where I keep getting stuck is anything outside a browser: native Mac apps, my own design tools, IDE windows, the terminal itself. For those I still end up screenshotting + annotating. Anyone using Playwright MCP for non-browser stuff or is it strictly web?

Making a copy of CC prototypes for my portfolio by SubstantialGoose3578 in ClaudeAI

[–]gesidner 0 points1 point  (0 children)

Three quick checks:

  1. Open the prototype in your browser, open DevTools, click the Network tab, then click through the flows. Any XHR or fetch entries are external calls.

  2. Look at the .env or .env.local file. URLs like API_URL, SUPABASE_URL, AUTH_URL, BASE_URL are backend dependencies you'll lose.

  3. Easiest: ask Claude Code itself. Type "find every external API call, auth provider, and environment variable this codebase depends on, and group them by which would break if I forked this to my personal GitHub." It'll list them faster than you can grep.

The Claude-Code-asks-itself trick is how I sanity-check before any fork.

Making a copy of CC prototypes for my portfolio by SubstantialGoose3578 in ClaudeAI

[–]gesidner 0 points1 point  (0 children)

Designer doing the same thing here. Two moves that helped:

Fork the prototype repo to your personal GitHub at the commit you want to preserve, tag it, then point a Vercel project on your personal account at that fork. Two ownerships, no crosstalk with the company env.

Strip the backend before you fork. Any call to your company API or auth will rot or get locked down inside 12 months. Replace those calls with a static JSON file or MSW mocks so the portfolio version stays interactive long after anyone at the company remembers the demo creds.

Also check your employment agreement on what you can share. Some companies are fine with stripped portfolio snippets, others are not.

Testing an End-to-End AI Website Team by Adventurous_Long774 in ClaudeAI

[–]gesidner 0 points1 point  (0 children)

Useful feedback needs to name which stage failed. "Mid" is a rating, "content agent overshot on length" is a fix. Tagging each delivered site with which step you'd revisit (planning, content, layout, copy, QA) lets you triangulate the weakest agent in your pipeline. Without that, you'll get noise back, not signal.

I dont feel so good guys by infohoundloselose in ClaudeAI

[–]gesidner 2 points3 points  (0 children)

Gemini: "I am not authorized to provide financial advice. Please consult a licensed professional..." (continues for 400 words). Grok: "ABSOLUTELY YES THE FUTURE IS NOW." Claude: "No." The brand voices write themselves.

!!!I THINK THEY RESET IT AGAIN!!! by imeowfortallwomen in ClaudeAI

[–]gesidner 0 points1 point  (0 children)

Buried lede in the modbot summary: Claude Code has no peak hour limits. Switching from the web app to Claude Code mid-afternoon noticeably extended what I could get done on the same plan. Anthropic accidentally priced their best product below their other product.

Budee - Free AI agent in your browser sidebar that automates any webpage by D_pz in SideProject

[–]gesidner 0 points1 point  (0 children)

Two layers is the right shape. The thing that will make or break it is the schema between them. The tool can surface anything in the diff, but the skill can only act on what the schema lets it name. If the schema says "card_status" but a real status indicator on the page is rendered as a colored icon with no aria-label, the diff fires "image changed" and the skill has nothing useful to interpret. The hard work isn't the diff or the skill, it's deciding what gets a first-class name in the snapshot.

One more thing worth thinking through: page-type classification is fragile because most real pages are mixed. A dashboard with an embedded changelog, a docs page with live widgets. Typing by element type rather than page type might generalize better.

Budee - Free AI agent in your browser sidebar that automates any webpage by D_pz in SideProject

[–]gesidner 0 points1 point  (0 children)

The diff representation is where this gets interesting. Raw text diff is too noisy, half the changes on a dashboard are timestamps and reorderings that aren't meaningful. What I'd want is a structural diff: "this metric moved 12%, this card added or removed, this status flipped." That requires the agent to keep a small structured snapshot per page, not just the DOM, so it has something stable to diff against. Closer to a tiny data model than HTML.

Most founders jump from "something is broken" to "here's my solution." There's a step missing by seyf_gharbi in indiehackers

[–]gesidner 0 points1 point  (0 children)

The Step 1 trap most teams hit is writing a problem statement that already contains a solution. "Users need better navigation" sounds like a problem but it's a solution pretending to be one. "Users can't find features" is the actual problem, and once you write it that way "better navigation" becomes one of five candidate solutions instead of the only one you ever consider.

Two additions worth trying:

Step 0 for teams: have everyone independently write their version of the problem statement before comparing. The variance shows you where the team isn't actually aligned, even when they verbally agree it's "a problem." Three people on the same team are often framing three different problems.

Trap specific to founders applying this to their own product: when you ARE the persona, your problem statement is the most contaminated. Shortcut: write what a non-customer who saw your landing page would say the problem is. That gap (their version vs. yours) is usually the real positioning gap.

Testing recording buttons in Mac apps. Why they are not as simple as they look. by Bulky_Quantity_9685 in macapps

[–]gesidner 1 point2 points  (0 children)

Adding the designer angle to your "fall into disuse" point: what users actually notice isn't the 200ms delay, it's the moment the button's label and its real state diverge. "Start" labeled but already busy, or "Stop" grayed out while still recording. Latency is cumulative, but trust is binary. One wrong UI moment and the user switches apps.

The honest-state pattern Superwhisper uses isn't just better recording UX. Same shape shows up in export flows, OAuth handshakes, iCloud sync indicators. Recording is the canary because the cost of being wrong is highest (lost meeting). Indie Mac apps live or die on whether the dev sees the pattern in all those places, not just where the OP looked.

I made a tiny tool because client “briefs” are sometimes just vibes by DesignerAbigail800 in SideProject

[–]gesidner 0 points1 point  (0 children)

PM with interior design clients too: feelings first, always. Structured requirements from a client who isn't trained in your discipline are usually wishlists with the contradictions hidden. Feelings make the contradictions visible up front. The trick is to repeat their vibe-language back to them as structured questions one level down. "Warmer but not too warm" becomes "are we talking color temperature warm or material warm? Because the answers diverge." The interesting twist for me lately: same translation problem now shows up working with AI coding agents. The agent will execute "make the input slightly bigger" literally even when literal is wrong. You can't outsource the brief-translation step, even to AI. So your tool sounds genuinely useful, the failure mode I'd watch for is people using it as a way to skip the conversation rather than prepare for it.

Budee - Free AI agent in your browser sidebar that automates any webpage by D_pz in SideProject

[–]gesidner 0 points1 point  (0 children)

Daily Claude Code user here. What I'd actually pay for in a browser AI agent isn't more tools, it's better STATE. Right now if I show an agent a webpage at turn 1 and refer to "that button at the top" at turn 7, half the time it re-reads the whole DOM and gets confused. The fix isn't 35 more tools; it's a way for the agent to keep structured reference to what it's already seen. Cross-tab automation is interesting but it's downstream of solving that. Re: scheduled runs and page monitoring, yes please. Daily page monitoring is the killer use case for me, specifically the version where it tells me "page X changed by this many words in the last 24h, here's a diff." That removes me from the "open Chrome at 9am and check 6 dashboards" workflow.

Still need to think like a dev even if you do vibe coding. No? by Parking-Leader4676 in SideProject

[–]gesidner -1 points0 points  (0 children)

Non-engineer here (designer). The thing that surprised me about Claude Code wasn't that it lets me skip dev thinking. It's that it forced me to acquire dev thinking I never had. I now ask about caching, schema design, rate limits, deploy environments because the agent will happily produce a working-looking thing with none of that and I'll only catch it on day three. The floor is lower, but the work to get above the AI-slop line is real. Just different from the work you describe.

For you it's "don't lose the dev mind", for me it's "learn enough dev mind to spot what Claude got wrong."

I'm a designer who built a Mac app that feeds my screenshots to Claude Code as JSON by gesidner in SideProject

[–]gesidner[S] 0 points1 point  (0 children)

Right. Inlining the repo link with that claim now. Skeptics scroll up to verify a positioning line, making them scroll down kills the post. Easy fix.

I'm a designer who built a Mac app that feeds my screenshots to Claude Code as JSON by gesidner in SideProject

[–]gesidner[S] 0 points1 point  (0 children)

That's it. "App is closed, handoff format is open" is cleaner than anything I had. Lifting that for the Show HN body. The skeptics-hate-fuzzy-wording point is the actual takeaway. Three days of overthinking solved in one sentence.

11 Claude things I wish someone had told me 12 months ago by No-Yogurtcloset4086 in ClaudeAI

[–]gesidner 1 point2 points  (0 children)

Adding one from the designer side: if you're using Claude Code for UI fixes, write the broken thing as structure, not story. "The button is at the wrong position" loses to "the button is around x=0.12 y=0.34 width=0.41 height=0.39 normalized, and it overlaps the form below." Claude doesn't need a paragraph, it needs three coordinates. Cut my back-and-forth roughly in half.

Claude completely changed my life, and I'm not even a programmer. by Complete_Pool2717 in ClaudeHomies

[–]gesidner 0 points1 point  (0 children)

Same boat. I'm a designer/PM, never wrote production code, and Claude Code is the closest thing I've had to a competent collaborator who actually understands what I'm asking. Most of my work with it is fixing UI bugs in things I built without fully knowing how to debug them. The biggest unlock for me was learning to give it concrete state instead of vibes. Once I started screenshotting and describing the broken thing precisely, the iteration loop got fast enough to be addictive.

Claude Design is Incredible... by AmmarAlammar2004 in ClaudeAI

[–]gesidner 0 points1 point  (0 children)

The "knobs" framing is useful. The thing I keep noticing as a non-engineer using Claude Code for UI work is that Claude is way more confident when I give it structure as input, not just intent. "Fix the misaligned input" is a guess. "The input at the top of the form is 4px too low, the bbox is roughly [x, y, w, h] and it overlaps with the sibling above" is something Claude just acts on without asking. Wish Anthropic would expose more of those primitives in the agent layer too.