promptdojo_promptdojo_promptdojo_promptdojo_promptdojo_promptdojo_promptdojo_promptdojo_promptdojo_promptdojo_promptdojo_

When a tool needs code — step 1 of 1

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any item that slipped more than a week past its date" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with a runbook tool checking a server name against an approved list: that is a lookup, not a judgment call.

The weak ask is:

Read these notes and tell me which items look off.

The builder ask is:

Compute which items slipped more than a week past their date, then draft the email around the flagged ones.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any action whose service is not on the approved list" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking an error-rate against a four-week average: that is arithmetic, not a judgment call.

The weak ask is:

Read these notes and tell me which follow-ups look urgent.

The builder ask is:

Compute which services exceeded the error-rate threshold, then draft the follow-up email around those two actions.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any asset whose ship date is missing from the channel calendar" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking a channel name against the approved list: that is a lookup, not a judgment call.

The weak ask is:

Read this list and tell me which assets look late.

The builder ask is:

Check each asset against the calendar, then draft the email around the two that slip.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any asset whose filename is missing from the kit list" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking an export size against a max dimension: that is arithmetic, not a judgment call.

The weak ask is:

Look at these assets and tell me which ones look off-brand.

The builder ask is:

Check each asset against the kit list, then draft the review around the two that need a redo.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any queue whose wait time jumped more than 20% week over week" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking a queue name against the approved floor list: that is a lookup, not a judgment call.

The weak ask is:

Read these counts and tell me which queues look slammed.

The builder ask is:

Compute which queues jumped more than 20% week over week, then draft the report around the extra-agent pick.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any claim whose source cell is empty" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking a product name against the approved list: that is a lookup, not a judgment call.

The weak ask is:

Read these claims and tell me which lines look shaky.

The builder ask is:

Check each claim against the source list, then draft the clearance note around the lines that stay.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any cut whose row count dropped more than 10% from last week" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking a segment name against the approved cut list: that is a lookup, not a judgment call.

The weak ask is:

Read these cuts and tell me which findings look off.

The builder ask is:

Compute which cuts dropped more than 10% from last week, then draft the readout around the finding to act on.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any initiative whose launch date is missing from the tracker" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking a team name against the approved org list: that is a lookup, not a judgment call.

The weak ask is:

Read this deck and tell me which initiatives look off.

The builder ask is:

Check each initiative against the tracker, then draft the deck around the two that need scope cuts.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any score whose competency is missing from the score sheet" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking a candidate id against the restricted roster: that is a lookup, not a judgment call.

The weak ask is:

Read these notes and tell me who looks strongest.

The builder ask is:

Check each score against the sheet, then draft the packet around who advances.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any step whose approval gate is still open" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking a step name against the SOP list: that is a lookup, not a judgment call.

The weak ask is:

Read these notes and tell me which handoffs look blocked.

The builder ask is:

Check each step against the approval list, then draft the handoff around the blocked one.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.

When a tool needs code

Code appears when a tool needs moving parts.

A reusable prompt is enough for some work. A checklist is enough for some work. A tool card is enough for the first version.

But if the tool needs to handle a list, remember a value, make a decision, repeat a step, connect to another tool, or check itself, code becomes useful.

Take a repeated output you already named. A prompt can draft the wording. But one step in the job is a check across a list: "flag any passage whose cite is missing from the approved list" — a step a model will eyeball and sometimes get wrong, and a step three lines of code get right every time. Same with checking a clause id against the privilege log: that is a lookup, not a judgment call.

The weak ask is:

Read this memo and tell me which passages look privileged.

The builder ask is:

Check each passage against the cite list, then draft the memo around the ones that stay privileged.

If you are starting here, the next chapter reads small tools: names, values, simple outputs. If you already wrote those tools in a studio, that chapter labels the same reads.

If you already ran a studio on this path, you already wrote some of those moving parts. This lesson is why they showed up — lists, lookups, checks a model will eyeball.

A variable is a name attached to a value so a tool can use it later.

Code is what tools need when they grow moving parts.

This matters because knowing which steps belong to the model and which belong to code is the difference between a tool you trust and one you babysit.

Next, look at your own tool card and mark the one step a model might fumble — that step is your first candidate for code.