gitstalk
Docs: Ask the repository

Ask the repository live

Type a question in plain words, such as "what changed on coupons today?". The page reshapes itself around it: the files that matter, their diffs, the beans behind them and the decisions taken. Nothing is generated; the page picks from views Gitstalk already has.

Try it

  1. Open the Ask tab

    Open a repository and choose Ask. Until the first bean has been pushed there is nothing to ask about, and you see the start page instead.

  2. Type a question

    Click the bar (or press /, or Cmd/Ctrl+K) to see suggested questions, or write your own.

    Questions that work in any repository
    what changed recently?
    what's being worked on right now?
    why did the sprout go red?
    what's on sprout but not on stalk?
    what did we decide?
  3. Read the answer, and why it looks that way

    The page answers in one sentence, then shows the views that fit: the files, a bean's journey with its diff, a decision card, a red-validation card, or who overlaps with whom. A line under the sentence lists the views it chose. Choose Clear the question to go back.

What you see

acme / shop
?Ask the beanstalk anything
what changed on coupons today?
answer

2 files about coupons changed in 2 landings the last 1440 minutes.

You asked "what changed on coupons today?"  Clear the question
This view: 1 Files · 2 Bean journey + diff · 3 Decision card
src/coupons/apply.ts +18 −4 · stack-coupons landed
src/coupons/expiry.ts +6 −0 · expire-coupons checking
src/coupons/apply.ts
- const total = price - coupon.amount;
+ const total = Math.max(0, price - sum(coupons));
decision

Stacking coupons: allow two, or only one?

One sentence first, then the views Gitstalk chose. The small info mark beside "This view" says who chose them.

The Files explorer: chips and the line

On the Ask tab, before you ask anything, choose Browse all files (or click a file in its list) and you are in the Files explorer. It has its own ask bar. It turns a question into chips: the area, the time range, the agent, the bean and the files it picked. Remove a chip and the answer is asked again without it. The Line menu switches between the sprout (staged) and the stalk (stable).

AskLine: Sprout (staged)
what changed on coupons today?
Recent changes about coupons × range last 24 h × file apply.ts ×
In this answer: 2 files tree · main view · side rail of beans and decisions
Each kind of question has a fixed arrangement of file tree, main view and side rail.

Where it lives

Place What you get
A repository's Ask tab The ask bar with completions on focus and example questions under it, then the answer sentence and the chosen views. Before you ask, it shows the stalk, what is growing now and what happened.
The Files explorer (Browse all files on the Ask tab's start view) The chips, the line menu, the file tree, the main pane (file, diff or bean) and a side rail of beans, decisions, tests or agents.
Your agent: ask_repo The same answer as JSON (the question's kind, files, beans, decisions and who picked them) with a preview_url that opens the same view for you. See MCP tools and scopes.

What it understands

Every question lands in one of ten kinds, and each kind has a fixed arrangement of views. That is why the answers feel the same from one question to the next.

Kind Example Shows
Recent changes what changed recently on coupons? Diffs of the files, with beans and decisions beside them
Who and why who changed tax rounding and why? The file with blame by bean, in the Files explorer
In flight what's being worked on in billing right now? Beans not landed yet, their agents and overlaps
What broke why did the sprout go red? Red validations, failing tests, culprits and reverts
Waiting for the stalk what's on sprout but not on stalk? Commits the stalk does not have yet
Decisions what did we decide about money formatting? Decision cards: two specs that disagreed and which won
Tests what tests cover checkout? The tests that exercise some code, passing or not
Agent activity what has a3 done? One agent's beans and the files they touch
Bean show bean t032 One bean: intent, diff, checks, reworks and decision
Explore src/lib/money.ts The repository, with search hits for the words

The router recognises bean ids written like t032 and agent slots like a3, the names benchmark races use. For a bean named add-truncate in your own repository, open it from its link in a list instead of asking for it by name.

How the answer is chosen

  1. A keyword router reads the question

    A plain, deterministic keyword router decides the kind of question and which area, time range, agent or bean it names. Its answer stands whenever the words match one of the kinds.

  2. Code finds the candidates

    Gitstalk lists the files, beans, decisions and sections it could show, from the repository's own history.

  3. A small model only chooses among them

    A decision model (Clef Flash by default; Clef 27B or Jev can be configured) is asked three things, each with a fixed list of options: which kind the question is, but only when the keywords could not place it; which of the many matching files the answer is about; and in what order to show the views. It never writes code, text or layout.

  4. Every pick leaves a receipt

    Click the small info mark beside a pick, or open "How this was ordered" on the status line, to see what was asked, the candidates, what was chosen and which model answered. If no model answered, the receipt says a fixed rule did.

The same models rank other choices in the product, such as how a bean is routed under approval rules. Where they appear they only choose a route or an order, and a fixed rule is always the fallback.

Blame in the Files explorer

When you ask a who or why question ("who changed tax rounding and why?"), the Files explorer opens the first matching file with a column that shows which bean last changed each run of lines, linked to the bean. Lines from before the first landing show as base. The rest of that story is on Why this line: blame by bean.

Limits

  • Ask reads the sprout or the stalk, not other branches.
  • A private repository answers 404 to anyone without a role on it, as every page of it does. See collaborators and visibility.
  • A question is up to 300 characters through ask_repo. Answers leave out file bodies and diffs; the handles and the preview_url lead to them.

Sources