SkyWaysThe agentic manual

Tool guide 4 · Google AI Studio and Jules

How the airline's team uses Google AI Studio and Jules

AI Studio to try a prompt and its settings before any code, and Jules to take a bounded chore off the engineers' hands.

5 moves3 settings4 traps32 dated factsLast checked

On this page
  1. What it is
  2. When not to use it
  3. Five moves
  4. Where it falls short
  5. Three settings
  6. Its traps
  7. The facts, dated

What AI Studio and Jules do for a team

AI Studio's playground takes a system instruction and a chat with a chosen model, with run settings at the side and a Get code button.1 Jules is an experimental coding agent that works on a GitHub repository in a virtual machine while you move on, and shows a plan for you to approve before it changes code.2 At the fictional airline, an engineer tries the rebooking assistant's instructions in AI Studio before anyone writes the call, and the team hands Jules the chores the signed spec makes plain, such as a missing test.

When to reach for something else

  • When a prompt would carry a real passenger's details. Under the Gemini API terms, Google uses what you send to unpaid services such as AI Studio to improve its products, and human reviewers may read it.3 The terms say not to submit sensitive, confidential or personal information to unpaid services.4 AI Studio falls under the paid terms when the account can reach a Cloud project with active billing, or is a Workspace enterprise account.5 Until the account is on the paid terms, the team tests with made-up cases.
  • When the code is not on GitHub. Jules reaches repositories only through GitHub for now, and its docs say other version control systems will follow.6
  • When the check needs the service running, as the walk through the agent's screen does. Jules's setup scripts do not currently support long-lived processes such as a dev server or a watch script.7 That walk belongs to a browser agent, as in Claude in the repo8.
  • When the team needs a paid plan on its company accounts. Paid Jules plans come through a Google AI plan, which for now is open only to personal Google accounts ending in @gmail.com.9

Five moves the airline's team makes with it

Each move names who makes it, in which phase, and the words they use. Copy one and change the nouns.

  1. Move 1P1An engineer

    Try the assistant's instructions before any code

    The engineer opens the playground, pastes the draft into System Instructions, and plays a passenger whose flight is cancelled. AI Studio's Run settings panel holds the model's parameters and safety settings, and switches for tools such as structured output, function calling, code execution and grounding.10

    In AI Studio a system instruction can be changed after the chat has started.11 So the engineer starts a new chat for each version, and keeps the version that passed in git.

    System instructions
    You are SkyWays' rebooking assistant. The passenger's flight is cancelled.
    Offer the next two SkyWays flights that have seats. Never invent a flight or a fare.
    For a refund, call the refund tool and offer only what it returns. Never name an amount yourself.
    For a partner (codeshare) booking, hand the case to an agent.
    When the fare engine is down, say so, and queue the case for an agent.
  2. Move 2P1Arjun, architect

    Pin the reply to a schema

    The refund tool reads a record, not prose. Structured output makes the reply follow a JSON Schema you supply, and it supports a subset of JSON Schema.12 Arjun turns structured output on in Run settings and gives it the record the tool expects.

    Google's guide says structured output is syntactically correct JSON, and that you should always validate its values in your application.13 So the refund tool still checks every amount, and the schema fixes only the shape.

    Structured output schema
    {
      "type": "object",
      "properties": {
        "action": {"type": "string", "enum": ["rebook", "refund", "hand_to_agent", "queue"]},
        "flight": {"type": ["string", "null"], "description": "A SkyWays flight number from the tool, or null"},
        "reason": {"type": "string", "description": "One sentence a contact-centre agent can read"}
      },
      "required": ["action", "flight", "reason"]
    }
  3. Move 3P1Priya, product manager

    Ask with Search on, and keep the sources

    Before the fallback field is signed, Priya asks what the rules in SkyWays' markets require, with each claim tied to its source. With the Gemini API's Google Search tool the model runs the searches itself and answers with citations that link each span of text to its source.14

    With Grounding with Google Search, Google stores your prompts, the context you give and the output for thirty days to build the grounded results.15 So the prompt names markets, never a passenger.

    Prompt, with Grounding with Google Search on
    SkyWays flies in these markets: <the list in section 2 of the PRD>.
    For each market, what must an airline offer a passenger whose flight it cancels: rebooking, a refund, care?
    Use the regulator's own pages and the law itself, nothing else.
    Cite every claim. Where a rule is unclear, or two sources disagree, say so.
    Do not estimate any amount.
  4. Move 4P2An engineer

    Hand Jules the missing tests, and read the plan

    The spec wants the refund tool tested at and around its limit, and two of those tests are missing: a bounded chore. Jules Tools, installed with npm install -g @google/jules, starts a session with jules remote new and fetches its changes with jules remote pull.16

    Jules writes a plan before any code, and you can change it through the chat before you approve it.17 The engineer approves it only when the plan reads the limit from the constant.

    Terminal
    jules remote new --repo skyways/rebooking \
      --session 'Add tests for refund_tool.py at the limit, one cent below it and one cent above it. Read the limit from REFUND_LIMIT and never type the number. Change nothing outside tests/. If a test fails, stop and say why.'
  5. Move 5P2Maya, QA lead

    Start Jules from the bug report

    When a past case fails the new evaluation, Maya files it as an issue. Adding the label jules to a GitHub issue starts a task, and when Jules finishes it posts a link to the pull request on the issue.18

    When Jules publishes a branch it is the commit author, and when it publishes a pull request it appears as its creator.19 So Maya reviews the pull request as she would a stranger's.

    GitHub issue, labelled jules
    Title: Codeshare refunds above the limit skip the agent
    
    Past case 318: a partner (codeshare) booking, and the passenger asks for a refund above the limit.
    Expected: the case goes to an agent, as the spec says.
    Actual: the assistant offers the refund itself.
    Change only the codeshare branch in rebooking/route.py.
    Add case 318 to eval/cases.csv. Do not touch refund_tool.py.

Where AI Studio and Jules let you down

  • A long chat fills up. Every message in an AI Studio chat is included in the prompt, so a long conversation can reach the model's token limit.20
  • An unread plan still runs. If you navigate away, Jules eventually approves its own plan on a timer.21 So a task is started only when someone can read its plan.
  • Its machine is online. Jules runs code in a cloud machine with internet access, and its FAQ says not to commit secrets such as API keys to the repository.22

Three settings decide how it behaves

1

The memory file: AGENTS.md

Jules looks for an AGENTS.md file in the root of the repository and uses it to make its plans more relevant.23 It can be the file the ChatGPT and Codex manual writes. In AI Studio the system instruction plays that part, so it lives in git beside its tests.

2

Permissions: what it may touch

When you connect GitHub you choose whether Jules sees all your repositories or only the ones you pick.24 Jules can commit as itself, which is the default, as co-author with you, or as you alone, and the choice applies to every repository and kind of task.25 AI Studio is on by default for every Google Workspace edition, and an administrator can turn it off or on for groups of users.26

3

Context: what each task starts from

Jules runs each task in a short-lived virtual machine, where it clones the repository, installs dependencies and runs tests.27 A setup script installs what the project needs, and Run and Snapshot saves the prepared machine for later tasks on that repository.28 Arjun's script installs the requirements and runs the refund tool's tests.

The traps that catch a team

  • Two of Jules's own pages disagree on how finished it is: the getting-started page calls it experimental2. The Jules FAQ says Jules is currently in public beta.29
  • Jules now fixes failing CI checks on the pull requests it creates and resubmits them, with no one asking.30 So a green check on a Jules pull request may be its second attempt. Read the commits, not the tick.
  • Editing a scheduled task in Jules is not currently supported, so a change means deleting it and creating a new one.31
  • A low temperature is not the safe setting it looks like. Google's prompting guide strongly recommends leaving temperature, top P and top K at their defaults for the current generation of Gemini models, warning that a temperature below 1.0 can cause looping.32

Where every fact on this page comes from

Each numbered mark above points to a row here: the fact, the vendor's page it was checked against, and the date. A date turns amber once it is more than 60 days old. Prices, usage limits and model names change too often to print: read them on Jules's plans and limits, AI Studio's plans and the Gemini models page.

Every fact this page uses, with its source and the date it was checked
No.The factSource, and when it was checked
1AI Studio's playground takes a system instruction and a chat with a chosen model, with run settings at the side and a Get code button.ai.google.dev/ai-studio-quickstart
2Jules is an experimental coding agent that works on a GitHub repository in a virtual machine while you move on, and shows a plan for you to approve before it changes code. experimentaljules.google/docs
3Under the Gemini API terms, Google uses what you send to unpaid services such as AI Studio to improve its products, and human reviewers may read it.ai.google.dev/terms
4The terms say not to submit sensitive, confidential or personal information to unpaid services.ai.google.dev/terms
5AI Studio falls under the paid terms when the account can reach a Cloud project with active billing, or is a Workspace enterprise account.ai.google.dev/terms
6Jules reaches repositories only through GitHub for now, and its docs say other version control systems will follow.jules.google/tasks-repos
7Jules's setup scripts do not currently support long-lived processes such as a dev server or a watch script.jules.google/faq
8Claude in Chrome is a browser extension that reads pages, clicks, types, fills forms and moves between tabs, and its Chrome side panel is in beta.support.claude.com/12012173-getting-started-with-claude-in-chrome
9Paid Jules plans come through a Google AI plan, which for now is open only to personal Google accounts ending in @gmail.com.jules.google/usage-limits
10AI Studio's Run settings panel holds the model's parameters and safety settings, and switches for tools such as structured output, function calling, code execution and grounding.ai.google.dev/ai-studio-quickstart
11In AI Studio a system instruction can be changed after the chat has started.ai.google.dev/ai-studio-quickstart
12Structured output makes the reply follow a JSON Schema you supply, and it supports a subset of JSON Schema.ai.google.dev/structured-output
13Google's guide says structured output is syntactically correct JSON, and that you should always validate its values in your application.ai.google.dev/structured-output
14With the Gemini API's Google Search tool the model runs the searches itself and answers with citations that link each span of text to its source.ai.google.dev/google-search
15With Grounding with Google Search, Google stores your prompts, the context you give and the output for thirty days to build the grounded results.ai.google.dev/terms
16Jules Tools, installed with npm install -g @google/jules, starts a session with jules remote new and fetches its changes with jules remote pull.jules.google/reference
17Jules writes a plan before any code, and you can change it through the chat before you approve it.jules.google/review-plan
18Adding the label jules to a GitHub issue starts a task, and when Jules finishes it posts a link to the pull request on the issue.jules.google/running-tasks
19When Jules publishes a branch it is the commit author, and when it publishes a pull request it appears as its creator.jules.google/code
20Every message in an AI Studio chat is included in the prompt, so a long conversation can reach the model's token limit.ai.google.dev/ai-studio-quickstart
21If you navigate away, Jules eventually approves its own plan on a timer.jules.google/review-plan
22Jules runs code in a cloud machine with internet access, and its FAQ says not to commit secrets such as API keys to the repository.jules.google/faq
23Jules looks for an AGENTS.md file in the root of the repository and uses it to make its plans more relevant.jules.google/docs
24When you connect GitHub you choose whether Jules sees all your repositories or only the ones you pick.jules.google/docs
25Jules can commit as itself, which is the default, as co-author with you, or as you alone, and the choice applies to every repository and kind of task.jules.google/changelog
26AI Studio is on by default for every Google Workspace edition, and an administrator can turn it off or on for groups of users.ai.google.dev/workspace
27Jules runs each task in a short-lived virtual machine, where it clones the repository, installs dependencies and runs tests.jules.google/environment
28A setup script installs what the project needs, and Run and Snapshot saves the prepared machine for later tasks on that repository.jules.google/environment
29The Jules FAQ says Jules is currently in public beta. public betajules.google/faq
30Jules now fixes failing CI checks on the pull requests it creates and resubmits them, with no one asking.jules.google/changelog
31Editing a scheduled task in Jules is not currently supported, so a change means deleting it and creating a new one.jules.google/scheduled-tasks
32Google's prompting guide strongly recommends leaving temperature, top P and top K at their defaults for the current generation of Gemini models, warning that a temperature below 1.0 can cause looping.ai.google.dev/prompting-strategies

Back to the table: the same jobs, in every family of tools.