4AIVN
Back to News

Claude Code, NotebookLM, and Obsidian for Smarter Research

Published on 2 June, 2026
Claude Code, NotebookLM, and Obsidian for Smarter Research

Quick Summary

Combining Claude Code, NotebookLM, and Obsidian transforms research from a manual information-gathering process into an AI-powered system capable of automation and long-term knowledge accumulation. Claude Code orchestrates the entire workflow, from source discovery to final deliverables; NotebookLM handles reading, analyzing, and synthesizing information; while Obsidian stores every insight in a structured personal knowledge base. Instead of producing a one-off answer, this approach creates a research pipeline with persistent memory that becomes more intelligent over time, continuously improving its context and effectiveness while providing a solid foundation for future AI agents.

Many people still do research manually: opening a dozen tabs, watching videos, reading articles, taking notes in scattered places, and then spending even more time trying to synthesize the result. A long-form post by monokern on X suggests a different pattern: use Claude Code to orchestrate the workflow, NotebookLM to analyze sources, and Obsidian to store long-term memory. Done correctly, this is not just a search session. It becomes an AI workflow that compounds over time.

The core idea is practical: Claude Code does not need to do everything inside an expensive context window. It can call tools, run skills, create files, and offload heavy source processing to NotebookLM. The output is then saved back into Obsidian as markdown, giving the next research session better context. According to the original post, the initial setup can be completed in under 30 minutes if the required tools are already available.

A workflow stack combining Claude Code, YouTube, NotebookLM, and Obsidian for research
The research workflow stack from monokern's original post

Why does this stack work?

The strength of the workflow is that each tool owns a clear layer. Claude Code acts as the execution engine: it receives plain-language instructions, calls skills, runs commands, manages files, and coordinates the pipeline. Instead of forcing the user to operate each step manually, Claude Code becomes the system operator.

NotebookLM is the analysis layer. Google's research tool can read sources, summarize them, generate analysis, flashcards, mindmaps, infographics, or audio overviews. When Claude Code sends source processing to NotebookLM, the user benefits from Google's processing layer rather than spending Claude tokens on every piece of long-form digestion.

Obsidian is the memory layer. Every analysis result is saved as markdown in a personal vault. Over time, that vault becomes a structured knowledge base of topics, sources, observations, patterns, and conclusions. Claude Code can read those files later to understand what the user cares about, what formats they prefer, and how they tend to evaluate a topic.

Skill Creator turns the workflow into a reusable tool

The first major step in the guide is installing Skill Creator inside Claude Code. This layer lets users describe a new capability in natural language, after which Claude Code creates the skill structure, installs it, and makes it available as a reusable command. In other words, instead of rebuilding the research prompt every time, the user packages the workflow as a dedicated skill.

The first example is a YouTube search skill. It uses yt-dlp to search videos by query and return metadata such as title, channel, views, duration, upload date, URL, and a views-to-subscribers ratio. For content or market research, this is more useful than a plain list of links because it shows which sources are actually attracting attention.

Using Skill Creator to build a YouTube search skill inside Claude Code
Skill Creator packages research actions into reusable commands

NotebookLM handles the heavy analysis

The post proposes connecting Claude Code to NotebookLM through notebooklm-py because NotebookLM does not currently provide an official public API. After installation and Google account authentication, Claude Code can use a custom skill to create a new notebook, add sources such as YouTube URLs, text, or files, and then ask NotebookLM to generate analysis or deliverables.

The key point is that NotebookLM is not only a summarizer. In a real research pipeline, it can receive 10 videos on a topic, analyze which frameworks are gaining traction, which ones are overhyped, where the community disagrees, and what content gaps remain uncovered. That processing takes time, but most of the work happens on the NotebookLM side.

NotebookLM processes sources and produces analysis in the research pipeline
NotebookLM acts as the source analysis layer in the research system

The full pipeline: one command for a complete research task

Once the YouTube search skill and NotebookLM skill exist, the next step is to create a pipeline skill that combines both. The user gives a topic, such as researching AI agent frameworks in 2026, and the pipeline searches for relevant sources, creates a notebook, adds those sources, runs the analysis, and returns the result as markdown.

In monokern's example, the pipeline finds 10 video sources, sends them into NotebookLM, generates analysis, creates an infographic, and saves the result into Obsidian. The total processing time is described as around 6 minutes, most of which is NotebookLM processing. The practical value is that the user does not need to open every tab, copy every link, or manually combine the metadata.

The final output is more than a chat answer. It includes full analysis, source lists, engagement metrics, trend observations, a visual deliverable, and a markdown file saved into the vault. That is what separates this workflow from a normal chatbot interaction.

Obsidian makes the system smarter over time

Obsidian is the most interesting part. If the workflow runs only once, it already saves time. But if it runs regularly, every new markdown file makes the personal knowledge base richer. After a month, Claude Code can see recurring topics, the types of insights the user values, and the preferred format for results.

The post also highlights the role of the claude.md file inside the vault. This can become a configuration file describing working conventions, analysis style, and output preferences. After several research sessions, the user can ask Claude Code to read recent work and update that file so it better reflects the user's current process.

Obsidian stores research outputs as long-term memory for Claude Code
Obsidian turns one-off research into a compounding knowledge system

The real value is the structure, not YouTube

YouTube is only the data source in the example. The pipeline structure is the valuable part. Users can replace YouTube with academic PDFs, industry reports, public documentation, web pages, local files, transcripts, or Google Drive documents. As long as Claude Code can access the source and pass it into the analysis layer, the operational template stays the same.

This opens many practical uses: researching a crypto ecosystem through whitepapers and public documentation, analyzing an emerging technology through conference talks, mapping content gaps in a niche, or tracking market dynamics from public reports. In every case, the same three layers remain: collect sources, analyze them, and store knowledge.

What should you watch out for?

This workflow is powerful, but it is not for everyone. It assumes the user is comfortable with Claude Code, has an Obsidian vault, can install CLI tools such as yt-dlp, and is willing to use an unofficial library to connect to NotebookLM. Also, because NotebookLM and YouTube can change access patterns, these skills should be treated as maintained tools rather than install-and-forget automation.

Still, the underlying idea is important: instead of using AI as a disconnected chat box, turn it into a research system with memory, a pipeline, and the ability to learn from your own work history. For people who regularly analyze markets, technology, or content, this is far more practical than opening 10 tabs and manually stitching everything together.

Discussion (0)

Log in to join the discussion.

No comments yet. Be the first!

Related Articles

Save AI Agent Tokens with Ponytail and Caveman

Token management is a hot topic in the AI community. In summer 2026, two open-source skills for saving tokens are being widely discussed: Ponytail cuts generated code lines by up to 54%, while Caveman slashes agent response tokens by 65%. Both target a familiar pain point for users of AI coding agents like Claude Code, Codex, or Gemini CLI—ballooning token costs—yet solve it from completely different angles: one trims unnecessary code, while the other trims unnecessary words.The Token Waste Problem in the AI Agent EraToday's AI Agents do not just answer single prompts; they operate in autonomous agentic loops by reading files, analyzing project structures, writing code, running builds, and checking for errors. Throughout this process, tokens are wasted mainly across three channels:Over-engineering (Excess Code): Instead of using native language or browser features, agents frequently install extra dependencies or construct unnecessarily complex components.Input Overhead (Excess Context): Build logs, JSON payloads, search results, and instruction files (SKILL.md) consume tens of thousands of input tokens on every API call.Output Bloating (Verbose Prose): Agents explain basic concepts at length before delivering the core answer.Ponytail: Turning your AI Agent into a "Lazy Senior Dev"Created by Dietrich Gebert, Ponytail is designed with a core philosophy: "The best code is the code you never wrote." Ponytail forces an AI Agent to think like a seasoned senior developer who always looks for the simplest, lowest-effort solution.Self-Questioning Ladder Before Writing CodeBefore touching any code, Ponytail requires the agent to run through a self-questioning ladder:YAGNI: Is this feature really necessary? If not, skip it immediately.Reusability: Is there an existing function or component in the codebase?Standard Library: Can the language's standard library handle it?Native Platform: Is it supported natively by the browser or OS? (e.g., using a native <input type="date"> instead of installing a heavy Flatpickr library)Installed Dependencies: Can already installed packages in package.json resolve it?One-liner: Can it be written in a single line of code?Only when the above steps fail will the Agent proceed to write the minimal working code required.Do Benchmark Results Match Reality?In tests using Claude Code (Haiku 4.5) on a full-stack FastAPI + React template, Ponytail reduced lines of code by 54% while maintaining 100% application safety.This figure was published by the author after the community pointed out baseline flaws in the initial benchmark (which claimed 80-94% reductions), so it should be treated as a reference signal rather than an independently verified statistic.Caveman: A Token Compression Ecosystem, Not Just a SkillWhile Ponytail targets generated code, Julius Brussee's Caveman attacks both agent input and output with the catchy slogan: "why use many token when few token do trick". Current Caveman is no longer a single skill, but a multi-layered toolkit.Caveman Proxy: Compressing Input DataA local proxy sits between the Agent and the API provider, automatically routing all traffic. It detects payload types like JSON, error logs, git diffs, or search results, compressing them to keep only essential content needed for the answer, while saving copies on disk for byte-exact recovery when required. In a 54-run pinned benchmark on Claude Code, this mechanism used 33.2% fewer input tokens than direct runs while passing all exact-answer checks.Caveman Skill: Compressing Response LanguageThis part returns agent communication to primal caveman-speak: dropping conversational filler and getting straight to the point without altering code or command integrity. Code, commands, and error logs remain byte-exact, with only explanatory prose compressed.Pixel Mode: Rendering Skill Files to ImagesVerbose SKILL.md files are rendered into PNG images upon skill installation, leveraging vision capabilities of modern LLMs to lower prompt token loads. Measured on Caveman's own skill file, this reduced size from ~1,069 down to an estimated 415 tokens, or 61%.The 61% reduction was measured on a single case (Caveman's own SKILL.md), not as an average across all skill files—actual results will vary based on file length and structure.Caveman Learn: Self-Diagnosing Token BottlenecksThe caveman learn command automatically reads local agent session history (running locally without accounts), scores the current setup, and pinpoints exact token sinks for user remediation.Numbers to Keep in Mind Reading Caveman MarketingCaveman's official documentation includes an "honest number warning": Caveman Skill alone reduces output tokens, while input and reasoning tokens remain mostly unchanged unless the proxy is enabled, adding ~1,000-1,500 input tokens per turn for the skill prompt. The 65% output token, 33.2% input token (via proxy), and 61% skill token (via Pixel Mode) metrics are separate measurements and do not stack into a single combined number—read context carefully before quoting.Can Ponytail and Caveman Be Combined in One Session or Project?Ponytail and Caveman do not conflict. Caveman keeps what the agent reads (input) and says (output) as concise as possible, while Ponytail ensures what the agent writes (code) is strictly minimal. Because their mechanisms do not overlap, they can be used side-by-side in the same session.While no independent benchmark has measured the exact savings of using both simultaneously, combining their individual metrics theoretically reduces overall session tokens significantly—making it well worth testing on your real codebase.Workflow Integration GuideBoth Ponytail and Caveman support quick installation for popular AI coding tools like Claude Code, Codex, Gemini CLI, Cursor, and Windsurf.Installing PonytailFor Claude Code:claude plugin marketplace add DietrichGebert/ponytail && claude plugin install ponytail@ponytailFor other agents without plugin marketplace support, copy rule files directly from the GitHub repository into your project directory.Installing CavemanFor Claude Code:claude plugin marketplace add JuliusBrussee/caveman && claude plugin install caveman@cavemanFor Gemini CLI:gemini extensions install https://github.com/JuliusBrussee/cavemanInstalling for Cursor, Windsurf, Cline, and OthersCaveman can be installed via the unified registry:npx skills add JuliusBrussee/caveman -a <agent-name>Will You Choose Ponytail, Caveman, or Both?Token optimization is not just about saving money; it keeps AI Agent context clean and prevents context drift during long sessions. However, the larger takeaway from both skills is not to blindly accept advertised percentages—even from authors—since each figure typically measures a specific scenario rather than a general average. The surest approach is running benchmarks on your own codebase before adding Ponytail, Caveman, or both to your daily workflow.

Nam
26 Aug, 2026
Claude Opus 5 Launches, Closing In on Fable 5

Anthropic has launched Claude Opus 5 at the same price as Opus 4.8 while raising response quality close to Fable 5, a model that costs twice as much. In other words, with near-Fable performance at half the price, most users will likely choose Opus 5 as their default and reserve Fable 5 for the small number of tasks that truly require the highest capability ceiling. What upgrades does Claude Opus 5 bring? According to Anthropic's launch announcement, Claude Opus 5 is the most capable Opus model to date and the first Opus release in the Claude 5 generation. Anthropic describes it as proactive and capable of deep reasoning, approaching the highest intelligence of Claude Fable 5 across many domains while using only half the token budget. The API model ID is claude-opus-5. Like Opus 4.8 and Fable 5, it has a default and maximum context window of one million tokens, a 128,000-token output limit, and thinking enabled by default. It has become the default model on Claude Max and the most powerful model available on Claude Pro. It is also offered through the Claude API, Amazon Bedrock, Google Cloud, Microsoft Foundry, and GitHub Copilot. Why will many users choose Opus 5 over Fable 5? The answer is not limited to price. Four factors make Opus 5 likely to become the default choice for daily work while Fable 5 moves into a specialized role for a small number of exceptional cases. It wins more real-world evaluations than it loses On Frontier-Bench v0.1, Anthropic's automated coding evaluation, Opus 5 scores 43.3% while Fable 5 reaches only 33.7%, a gap of almost ten points in favor of Opus 5. On CursorBench 3.2 at maximum effort, Opus 5 reaches about 70.1%, less than half a percentage point behind Fable 5 while costing only half as much. Across evaluations where both models have published results, Opus 5 wins more often than it loses, and its victories are generally larger than its defeats. The fastest way to verify this is to run the same task on both models at comparable effort levels and compare the output quality instead of relying only on published benchmarks. No mandatory 30-day data retention Fable 5 and Mythos 5 are Covered Models that require prompts and outputs to be retained for 30 days for safety purposes. They do not support zero data retention (ZDR) on any platform, even when an organization already has a ZDR agreement. Opus 5, by contrast, can still operate under ZDR like Opus 4.8. For teams handling legal, medical, or financial data, this difference alone may remove Fable 5 from consideration without any performance comparison. Fewer interruptions from safety filters Anthropic says the cybersecurity classifier intervenes about 85% less often with Opus 5 than with Fable 5. For coding agents that run for hours or overnight, a request being blocked midway because it touches a safety threshold is a real workflow risk, and Opus 5 significantly reduces that frequency. Adjustable effort makes budgets easier to predict Opus 5 supports adaptive thinking with effort ranging from low to maximum. Low or medium works for fast responses and high-volume workloads, while high or maximum suits complex coding, deep research, and multi-step workflows. Because teams pay according to the selected effort instead of being locked into a fixed Fable 5 cost level, they can optimize the budget for each task rather than paying the highest rate on every request. Initial impressions after trying Opus 5 After using Opus 5 for daily writing and coding work, the clearest impression is that it is substantially smarter than Opus 4.8, especially in understanding intent on the first request without repeated explanation. For tasks such as summarizing long documents, writing code with complex branching logic, or preparing a multi-step plan, Opus 5 works smoothly and loses the thread less often than the earlier version. There is still a gap compared with Fable 5, although it is smaller than expected. On work that demands deep reasoning or autonomous execution across many consecutive steps without intervention, Fable 5 remains slightly more dependable and makes fewer mistakes. For most daily work, however, that difference is difficult to notice without placing both models side by side. If you are using Opus 4.8, this is a sensible time to upgrade. If you are choosing between Opus 5 and Fable 5 for ordinary work, Opus 5 is almost certainly sufficient without paying the premium. When is Fable 5 still the right choice? Fable 5 retains an advantage on the hardest work. On SWE-bench Pro, which uses real GitHub issues and is considered one of the strictest measures of practical coding, Fable 5 scores about 80% while Opus 5 reaches roughly 79%, a small gap that still favors Fable. Fable 5 is also the only model Anthropic positions in the Mythos class, meaning its overall capability is designed to exceed Opus. This distinction is clearest in specialized fields such as expert medical analysis and autonomous research that continues for days without supervision. In other words, Opus 5 wins in daily coding and knowledge work, while Fable 5 retains its edge on the hardest problems and fields requiring the highest possible reliability. For most users and small teams, those problems represent a small portion of daily work, making the twofold price difference difficult to justify unless their workload falls directly into that category. Quick comparison: Opus 5 vs. Fable 5 CriterionClaude Opus 5Claude Fable 5 Input price$5/million tokens$10/million tokens Output price$25/million tokens$50/million tokens Context1 million tokens1 million tokens Maximum output128,000 tokens128,000 tokens Frontier-Bench v0.1 (coding agent)43.3%33.7% SWE-bench Pro (practical coding)~79%~80% Data retentionSupports zero data retentionMandatory 30-day retention, no ZDR Safety-filter interventionAbout 85% lowerHigher Best fitDaily work, coding agents, sensitive dataDifficult research, multi-day autonomous projects, specialized medical analysis Can Opus 5 really compete with GPT-5.6? On paper, the answer is yes, but not across every category. Opus 5 leads GPT-5.6 Sol in reasoning about novel situations, computer use, and most public coding evaluations, while GPT-5.6 Sol remains ahead on some command-line and information-retrieval tests. Neither wins outright, but for the first time a mid-priced Anthropic model stands level with, and in several areas ahead of, OpenAI's flagship model. The more useful question is not which model is stronger overall but which one fits your work. If daily tasks center on code, long documents, and multi-step execution, Opus 5 is a compelling choice on both price and quality. If you already rely on the OpenAI ecosystem or need a specific GPT-5.6 strength, the switching cost may not be worthwhile. The most reliable answer is still to run the same job on both models, because benchmark tables do not always reflect real experience.

Nam
25 Jul, 2026
How to combine Codex and Claude Code with one plugin

Is anyone else using Codex and Claude Code side by side? I only recently discovered the Codex plugin for Claude Code, published by OpenAI itself. The useful part is not simply having another AI available. It is being able to call Codex from the current Claude Code session for a code review, an adversarial design challenge, or a separate delegated task without constantly switching tabs and sessions. What makes the Codex plugin for Claude Code useful? The openai/codex-plugin-cc plugin is intended for developers who already work in Claude Code and want to add Codex to that workflow. Instead of allowing both agents to edit the same file at the same time, you can assign clear roles: Claude Code implements and Codex reviews, or Claude Code keeps the main thread while Codex investigates an independent problem in the background. The official plugin provides review commands such as /codex:review and /codex:adversarial-review, delegation through /codex:rescue, and job or session management through /codex:transfer, /codex:status, /codex:result, and /codex:cancel. Codex therefore becomes a collaborator inside the Claude Code workflow rather than a separate window. It does not create a separate Codex runtime The plugin uses the Codex CLI and Codex app server installed on the same machine. It also reuses the local authentication state, current repository checkout, and existing config.toml settings. Integration is straightforward, but each request still contributes to the user's Codex usage limits. Requirements before installation You need Node.js 18.18 or later and either a ChatGPT subscription, including Free, or an OpenAI API key. If Codex CLI is missing, /codex:setup can offer installation guidance. You can also install it manually with npm install -g @openai/codex and sign in with !codex login. How to install the Codex plugin in Claude Code Run these commands in Claude Code: /plugin marketplace add openai/codex-plugin-cc /plugin install codex@openai-codex /reload-plugins /codex:setup The last command checks whether Codex is installed and authenticated. Once setup is complete, the Codex slash commands should appear in Claude Code, along with the codex:codex-rescue agent under /agents. Try a background review first A low-risk first run is /codex:review --background. Use /codex:status to monitor it and /codex:result to retrieve the final review. Multi-file reviews can take time, so background mode keeps Claude Code available for other work. Three effective Codex and Claude Code workflows The value of the plugin comes from role design. If both agents modify the same area without boundaries, the result may be conflicting edits, repeated analysis, and wasted context. The following workflows make ownership clearer. Let Claude implement and Codex review After Claude Code completes a feature, run /codex:review for a read-only review. It can inspect current uncommitted changes or compare the branch against a base with /codex:review --base main. Because Codex does not edit files in this mode, the developer keeps control of what is accepted. For example, after Claude adds a payment flow across several modules, Codex can inspect logic errors, edge cases, and cross-file side effects. Claude Code can then evaluate the findings and apply only the changes that make sense. Delegate an entire task to Codex Use /codex:rescue for a problem that can be isolated, such as /codex:rescue --background investigate why the integration test is flaky. Claude Code can continue working on the interface or documentation while Codex investigates in the background. Rescue supports --background, --wait, --resume, and --fresh. Define the expected output and file scope before delegating. A vague instruction to fix everything while Claude Code is also editing the repository can still create collisions. A good task has a specific goal, completion criteria, and a clearly owned part of the codebase. Use adversarial review to challenge the project direction /codex:adversarial-review is designed to question implementation and design decisions rather than merely find bugs. For example, /codex:adversarial-review --base main challenge the caching and retry design asks Codex to inspect assumptions, trade-offs, alternatives, and risks such as data loss, race conditions, rollback, or reliability. This is where the two agents may appear to argue, but the debate only helps when a human sets a narrow question, requests evidence, and defines a decision rule. Otherwise, the review can become a chain of opinions with no practical outcome. Transfer sessions and manage background jobs /codex:transfer creates a persistent Codex thread from the current Claude Code session and prints a codex resume <session-id> command. It is useful when a discussion has grown beyond a short review and you want to continue directly in the Codex App or TUI without manually rewriting the context. Monitor, retrieve, and cancel work For background tasks, /codex:status shows progress, /codex:result returns the stored output and session ID, and /codex:cancel stops an active job. These commands prevent multi-agent work from becoming a black box. When a task drifts from its goal, canceling early is usually cheaper than waiting and starting over. Watch for review loops and usage limits Important: OpenAI explicitly warns that the optional review gate can create a long-running Claude/Codex loop and drain usage limits quickly. When enabled with /codex:setup --enable-review-gate, the plugin uses a Stop hook, which is an automated trigger that runs when Claude is about to finish its response, to start a targeted Codex review. If it finds an issue, Claude's response is blocked so Claude can address it first. This can be valuable before shipping, but it should not be left unattended. A practical safety checklist Assign roles before running: one agent implements while the other reviews, or each owns a separate task. Limit the scope by naming the branch, files, risk area, and completion criteria. Use background mode for large reviews and check progress periodically. Enable the review gate only while actively monitoring it, then disable it with /codex:setup --disable-review-gate. Do not let Claude review all Codex output and then ask Codex to review every Claude revision without a clear stopping rule. Use /codex:cancel when a task moves in the wrong direction. How can Codex and Claude Code work well together? The official OpenAI plugin offers a cleaner alternative to keeping Codex and Claude Code open in separate tabs or letting both agents edit the same file. Claude Code can remain the coordinator while Codex reviews, challenges a design, or owns a separate task. A sensible starting point is one small /codex:review --background run, followed by status, result, and cancel. Try rescue, transfer, and the review gate only after the basic workflow is familiar. The two systems can complement each other well, provided a person still sets the boundaries, budget, and stopping point.

Nam
14 Jul, 2026
YC CEO's 6 forcing questions before starting any project

I'd heard a lot about the gstack repo from the CEO of Y Combinator, so I got curious and installed it to try. What surprised me most wasn't the polished workflows — it was the genuinely different mindset behind them. That mindset shows up in the very first command: /office-hours, with six questions that don't ask about code at all, only the things most people haven't thought through before they start building. What is gstack and why did Garry Tan build it gstack is an open-source toolkit by Garry Tan, CEO of Y Combinator, built primarily for Claude Code. The core idea: instead of using AI as a plain code writer, Garry Tan wanted to turn Claude into a small AI agent team, where each member handles a different role — from product direction and security review to testing and release. The entire workflow runs in an ordered loop: Think → Plan → Build → Review → Test → Ship → Reflect. More specifically, gstack splits Claude Code into 23 specialized roles, and the output of each step is automatically passed to the next — no manual handoff needed. Some of the standout commands: /office-hours 6 questions that force you to rethink your feature before writing a single line of code /plan-ceo-review checks whether you're overbuilding or underbuilding relative to what's actually needed /review catches serious bugs that standard automated checks miss /qa opens a real browser, performs real interactions, finds real bugs /cso runs an automated security audit against international standards /ship syncs, tests, pushes code and opens a pull request in a single command How effective is gstack? Garry Tan says his working speed in 2026 is roughly 810 times faster than in 2013, measured by lines of completed code per day (11,417 vs 14). In 60 days, he shipped 3 production services and over 40 features — all while running Y Combinator full-time. Andrej Karpathy, co-founder of OpenAI, confirmed a similar trend, sharing that he hasn't typed a single line of code himself since December 2025 thanks to AI agents. But among all those commands, /office-hours stands out for the opposite reason from the rest, it doesn't help you work faster and it helps you avoid building the wrong thing from the start. Why Garry Tan puts /office-hours first Garry Tan placed /office-hours at the top of the workflow based on a simple observation: most products fail not because of poor code, but because they build the wrong thing. Teams spend weeks on a feature nobody needs, or build the right feature for the wrong audience, or solve a problem users already handle better another way. The command has two modes: Startup mode for founders and people building real products with real users, and Builder mode for side projects, hackathons, and open source. This article focuses on Startup mode, where the 6 questions are most directly applicable. 6 questions that stop you from building the wrong thing These aren't 6 questions to answer quickly and move on. They're designed to make you think honestly, because the more truthful your answers, the more accurately Claude can match what you actually need — saving you a significant amount of time later. You can read the full original prompts at office-hours/SKILL.md.tmpl. Demand reality: Is there a real need? Original question: "Who specifically has this problem? How are they solving it today?" Not "users in general" or "the marketing team" — the goal is to name one real person, ideally by name, who is actively struggling with a specific problem. If you can't name someone like that, you don't yet understand what they actually need. Concrete example: Instead of "users want better task management," it should be: "Minh, a project manager at a 20-person company, copy-pastes between Notion and Google Sheets every Monday morning because the two tools don't sync." Apply this to your own situation accordingly. Status quo: What are they using instead? Original question: "What is their current workaround? How much better do you need to be for them to switch?" Everyone is already solving their problem somehow — whether with Excel, sticky notes, or a WhatsApp group. If their current solution is good enough, they have no reason to migrate their data and learn an entirely new platform. Your solution needs to be meaningfully better before they'll even consider switching. Desperate specificity: Who needs this badly enough? Original question: "Who needs a solution badly enough to use your ugly beta version today?" This is the question that separates nice-to-have from must-have. If you can't find anyone willing to use an incomplete, rough, buggy version right now, the problem you're solving isn't urgent enough. Real early users are people who need a solution badly enough to tolerate an unpolished product — as long as it's moving in the right direction. Narrowest wedge: What is the smallest possible piece? Original question: "What is the smallest thing you could launch tomorrow? Not the full vision — the smallest piece." Not the first full-featured version — something even smaller than that. This question typically cuts 80% of the scope people add because they think "might as well do it while I'm here." It's a trap many builders fall into, including myself. Launch the smallest meaningful piece first, listen to real users, then decide whether to expand. Common mistake: Many people confuse "smallest piece" with "first full-featured version." The narrowest wedge truly means one small thing that solves one specific problem for one specific group of users — nothing more. Observation and surprise: Have you watched real people use it? Original question: "Have you watched real people use your product? Did they use it in ways you didn't expect?" This question is best saved for the second iteration onward, once you have something to test. Rather than asking for feedback through messages or surveys, sit and watch directly — or review screen recordings. The most valuable insights usually don't come from what users say, but from what they do that you didn't design for, or what they skip that you thought was important. Note: If you're in your first iteration and don't have a product yet, you can skip this question and come back after launching the smallest piece in step 4. Future-fit: The 2 to 3 year view Original question: "In 2-3 years, will what you're building still be relevant — or is the trend moving against you?" This isn't about predicting the future precisely. It's about avoiding building something that's already fading. If the trend is making your problem less urgent over the next two years, that's a clear signal to reconsider from the start. That said, if your goal is to move fast and capture the market before big tech ships something similar, this question can reasonably be set aside. A real example: a simple idea completely flipped In the gstack documentation, Garry Tan walks through a practical example. You open /office-hours and say: "I want to build an app that summarizes my daily work calendar." Claude doesn't agree and start executing. Instead, it pushes back: what you just described isn't a calendar summary app — it's actually a full personal AI chief of staff. These are entirely different in scope, technical complexity, and user expectations. From that single opening description, /office-hours helps you see: 5 features you were describing without realizing it 4 assumptions that need to be validated before building 3 different implementation directions with varying levels of complexity 1 recommendation: launch the smallest piece first, treat the rest as a long-term roadmap All of this happens before you write a single line of code. The output is saved as a document that subsequent steps in the workflow automatically pick up and continue from. These 6 questions work even without gstack The 6 questions from /office-hours don't require Claude Code or a gstack installation. They're a way of thinking — the same framework YC partners use to evaluate startups — and you can apply them right now with any AI tool you already have. The difference when using them through gstack is that Claude won't let you give vague answers. It pushes for specifics and won't move forward until your response is grounded enough to be useful. That's why /office-hours tends to be the most uncomfortable command in the entire toolkit — not because it's difficult to use, but because it asks exactly what you've been avoiding. Try it today: Before starting your next project, paste these 6 questions into Claude, Gemini, or ChatGPT along with your idea. Ask it to go through each question one at a time and not let you skip any. The results are often more surprising than you'd expect — even for ideas you've already thought through carefully. gstack currently has over 117k stars on GitHub and is still growing. For me, the most valuable part isn't the technical commands like /review or /ship — it's /office-hours, because it's the only command in the entire toolkit that forces you to stop and think before doing anything else.

Nam
27 Jun, 2026