Skip to main content

exloop

Human-led exploration with a persistent map. An AI companion that does not answer your question for you: it asks one or two honing questions, walks one edge at a time, keeps a map of where you have been, and offers the next step that is within reach. When several explanations are in play, Idea Lab helps draw, attack, compare, and check them without forcing an early winner. Both ship as skills for any AI tool that reads SKILL.md files — Claude Code, Codex, and the like.

Installing

Most people get exloop by installing newlife, which depends on it:

python -m pip install newlife
newlife start my-research

start installs the exloop and Idea Lab skills, together with newlife's own, into every AI tool found on the machine.

On its own:

python -m pip install exloop
python -c "import exloop; print(exloop.skills_dir())"

and copy the skill directories it contains into your AI tool's skills folder (~/.claude/skills/, ~/.codex/skills/, ...).

Using it

Open a folder in your AI tool and say:

Explore this with me: your curiosity

The AI asks; you answer and decide. The map is kept silently in ~/.exloop/explorations/<slug>/, one folder per exploration — the same folder whichever AI tool you switch to, because the identity is the slug, not the chat session. When you close an exploration the AI archives the record into your research repository (explorations/<slug>/). When a boundary has become a decidable question — you can say what measurement would make the answer different — the AI says so once, and on your yes hands the record to newlife (questions/<slug>/origin/), where the preregistration discipline takes over.

Idea Lab is not a second entry point that must be completed first. It is an optional reasoning pattern inside exploration. The AI uses it when competing or underspecified explanations need to be made explicit, challenged, and distinguished.

What is in the package

  • skills/exloop/SKILL.md with its references: the protocol (four events — started, marked, pivoted, closed — and the map as their projection) and the state model.
  • skills/idea-lab/SKILL.md with domain profiles for formal theory, empirical and causal research, simulation, engineering and product mechanisms, and interpretive research.
  • skills/exloop/scripts/exploration_state.py: the zero-dependency helper the skill runs — init, mark, pivot, show, close, list, archive, handoff, and a self-test.
  • exloop.skills_dir(): the one Python function, so that newlife can locate the skill files. exloop has no other API and no dependencies.

Requires Python 3.11 or newer.

This repository

Path What it holds
skills/exloop/ The persistent, human-led exploration skill and state helper.
skills/idea-lab/ The optional Draw—Attack—Compare—Check reasoning pattern and domain profiles.
src/exloop/__init__.py skills_dir(), the one Python function.
scripts/install-skill.py Installs the master byte for byte into AI tool directories; --force to overwrite drifted copies.
scripts/check_release_artifacts.py Refuses to ship anything but the skills: run it on dist/ before uv publish.
python3 skills/exloop/scripts/exploration_state.py self-test
uv build --out-dir dist && python3 scripts/check_release_artifacts.py dist

The skill is used downstream by newlife, which depends on this package. Apache-2.0.

Metadata

Release files for exloop 0.2.0

For a detailed explanation of source distributions (sdists) and built distributions (wheels), please see the package formats documentation.

Source distribution (sdist)

Source distribution for exloop 0.2.0
File Size Uploaded
exloop-0.2.0.tar.gz 30.4 kB Details

Built distribution (wheel)

Table of built distributions (wheels) for exloop 0.2.0
File Interpreter ABI Platform
exloop-0.2.0-py3-none-any.whl Python 3 none any Details

Total release size: 67.3 kB

Release files / exloop-0.2.0.tar.gz

Download URL exloop-0.2.0.tar.gz
Size 30.4 kB
Tags Source
SHA-256 checksum
How to use checksums
447fec487caddbfc3ff2b782ff19e76b44f4651ff418df8195be91a28eb5ec7f
BLAKE2b-256 checksum
How to use checksums
ffe56765786e257bc3746ff7804fb46c14a62322d10ef783118fe3dff41b46a8
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.19

Release files / exloop-0.2.0-py3-none-any.whl

Download URL exloop-0.2.0-py3-none-any.whl
Size 36.9 kB
Tags Python 3
SHA-256 checksum
How to use checksums
d9783d07a2ca0f35d36e803483a496fd9fc51900563276f1a4f80fedcd5400f4
BLAKE2b-256 checksum
How to use checksums
bfcc0901866911fdf6dd6f4469c7fa429f7ea4ba3725ae6326b465bbc026b6a0
Upload date
Uploaded using Trusted Publishing?
What is trusted publishing?
No
Uploaded via uv/0.8.19

Release history Release notifications | RSS feed

0.3.0

2 release files

This release

0.2.0 This release

2 release files

0.1.0

2 release files

Anthropic, PBC Visionary sponsor Bloomberg Visionary sponsor Hudson River Trading Visionary sponsor Meta Visionary sponsor NVIDIA Visionary sponsor Microsoft Sustainability sponsor Depot Continuous Integration AWS Cloud computing and Security Sponsor Datadog Monitoring Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page