A SMALL EXPERIMENT IN TERMINAL AGENCY FIELD NOTE 01 / 05

One useful move.
A receipt you can inspect.

Morrow is a small, experimental terminal agent for turning a fuzzy task into one testable next step—not for taking over your computer.

Its rhythm: notice what is here, try a small move, check the evidence, and learn from the result.

An amber cursor follows a dotted path across a dark field toward an open doorway. N 01 / START WITH CONTEXT E 05 / RETURN WITH A RECEIPT
FIG. 01 A route is useful when you can see where it went.
THE WORKING IDEA

Not a command center.
A notebook with a tool belt.

A bounded loop for
readable work.
01ORIENTATION

WHAT MORROW IS

Agency, with the edges left in view.

Morrow holds a goal, consults a chat-completions model, and can use a short list of local tools inside one workspace. The work is deliberately small enough to follow: a bounded turn count, a narrow tool belt, and a receipt after each action.

Its three lenses—Scout, Cartographer, Skeptic—are prompt-level perspectives. They are not separate model calls or separate agents.

02THE ROUTE

NOTICE → HYPOTHESIZE → TRY → CHECK → LEARN

Progress you can point to.

Before a tool is called, Morrow considers what is known, what context may be missing, and what could show the current idea is wrong. Then it chooses from its limited local tools.

01

Notice

Start with the goal and the workspace context.

SCOUT / WHAT'S HERE?
02

Hypothesize

Name one small, falsifiable next move.

CARTOGRAPHER / WHAT'S MISSING?
03

Try

Request an allowed local action, not arbitrary code.

TOOL CALL / ALLOWLISTED
04

Check

Use the action receipt to confirm what happened.

SKEPTIC / WHAT WOULD DISPROVE IT?
05

Learn

Return a concise result and the next smallest move.

RESULT / EVIDENCE ATTACHED
03THE TOOL BELT

SMALL, ON PURPOSE

Useful moves.
No hidden superpowers.

T / 01

Read and shape text

List files and folders; read, create, or update UTF-8 text files inside the selected workspace. Reads and writes have size limits.

T / 02

Calculate the basics

Evaluate a bounded arithmetic expression: addition, subtraction, multiplication, division, powers, and parentheses.

T / 03

Ask for local time

Return the machine's local date and time, with its timezone when available.

T / 04

Keep the trail

Append machine-readable run events and tool receipts in the workspace. Before replacing a file, preserve a timestamped copy.

AN EQUALLY IMPORTANT LIST

What it cannot do

× No shell× No browser× No general network tools× No file deletion× No arbitrary code execution

File paths are checked against the selected workspace. The reserved .morrow/ area holds agent state, receipts, and backups.

04THE DATA MAP

BEFORE YOU RUN IT

Your files stay in your workspace.
The model still sees what you read.

Morrow's local tools write to your machine, but their results are part of its model conversation. “Local tool” does not mean “private from the API.”

A / INPUT

Your goal + workspace path

Morrow sends the task goal and the selected workspace path as context to the configured chat-completions API.

B / MODEL API

Your configured endpoint

The model returns a response and, when it asks to use a tool, a requested action for Morrow to check and run locally.

C / LOCAL + RETURN

Inspected text + tool results

File contents that Morrow reads and the tool arguments/results are returned to the model API so it can continue the task.

LOCAL RECEIPTS

<workspace>/.morrow/receipts.jsonl can record the goal, model name, timestamps, tool arguments, and tool results. Reading a file can put its contents in both a model request and a local receipt.

LOCAL SNAPSHOTS

When a workspace file is overwritten, the previous copy is stored under <workspace>/.morrow/backups/. Morrow writes these files locally; it does not encrypt them.

Only use it with information you are willing to send to the API you configured. Morrow does not control that provider's retention or data-use policy; check the provider's terms before using sensitive material.

05FIRST RUN

A SHORT PATH IN

Bring a goal.
Keep the workspace yours.

Morrow is a Python CLI experiment. No third-party Python packages are required.

  1. 01

    Start with the project

    Open the Morrow project folder in a terminal. The included README explains the package and tests.

  2. 02

    Configure a compatible API

    Python 3.10+ and an API key are required. Set OPENAI_API_KEY in your environment. Set OPENAI_API_BASE if your endpoint is not the default; set MORROW_MODEL if needed.

  3. 03

    Give it one bounded task

    Choose a workspace directory that contains only files you are comfortable having the model inspect.

FIRST RUN / LOCAL TERMINAL READY WHEN YOU ARE
$python -m morrow "Review the outline and suggest the next useful edit" --workspace ./workspace

Default: 8 rounds · Adjustable: --max-turns 1..20

READ THE RECEIPTS

After a run, inspect .morrow/receipts.jsonl and the workspace changes. A receipt is evidence of an action—not a promise that the result is right.

Try the smallest thing that could teach you something.

Back to the start