Skip to main content

Documentation Index

Fetch the complete documentation index at: https://docs.simplefunctions.dev/llms.txt

Use this file to discover all available pages before exploring further.

A thesis is a living causal tree that evolves as signals arrive. SimpleFunctions wraps the lifecycle in a small set of verbs — each is a single CLI command and a single API endpoint.

Lifecycle

create  →  context  →  signal  →  evaluate  →  augment  →  fork  →  publish  →  unpublish
VerbCLIAPI
Createsf create "thesis text"POST /api/thesis/create
Listsf thesis list --jsonGET /api/thesis
Getsf get <id> --jsonGET /api/thesis/{id}
Contextsf context <id> --jsonGET /api/thesis/{id}/context
Signalsf signal <id> "<content>"POST /api/thesis/{id}/signal
Evaluatesf evaluate <id>POST /api/thesis/{id}/evaluate
Augmentsf augment <id>POST /api/thesis/{id}/augment
Update nodes(via MCP update_nodes)PATCH /api/thesis/{id}/nodes
Fork(via MCP fork_thesis)POST /api/thesis/{id}/fork
Heartbeatsf heartbeat <id>POST /api/thesis/{id}/heartbeat
What-ifsf whatif <id>POST /api/thesis/{id}/whatif
Publishsf publish <id> --slug XPOST /api/thesis/{id}/publish
Unpublishsf unpublish <id>POST /api/thesis/{id}/publish (DELETE shape)

Walkthrough

1

Create

sf create "Fed cuts rates by July driven by jobs softening + CPI ≤ 2.5%"
The server runs an LLM classifier that rejects shell-escape garbage and obvious junk, expands the thesis into a causal tree (root claim → drivers → markers → markets), and assigns an initial confidence. Returns the new thesis id.
2

Pull context

sf context <id> --json
Returns the full causal tree, current confidence, related markets with edges, and any pending signals.
3

Inject a signal

sf signal <id> "Powell speech: 'job market is softening more than expected'"
Server appends the signal, schedules the next monitor cycle. Use inject_signal MCP tool to do the same from an LLM.
4

Evaluate

sf evaluate <id>
Triggers a deep evaluation (heavy model). Confidence delta and position recommendations come back in the response.
5

Augment

sf augment <id>
LLM proposes new tree nodes; you accept/reject. Append-only — old nodes never deleted.
6

Publish

sf publish <id> --slug fed-rate-cut-july
Makes the thesis public at simplefunctions.dev/thesis/<slug>. Slugs are normalized hard (/[^a-z0-9\s-]/g strip, max 60 chars).

Heartbeat

Theses run on a heartbeat — the server periodically re-evaluates active theses and notifies you when confidence shifts or kill conditions trip. See Heartbeat.

Next steps

Thesis API

Every endpoint with payload shapes.

CLI command reference

Every sf thesis command.

Trade intents

Turn a thesis edge into a tradeable intent.

Concepts

Causal trees, edges, kill conditions.