agentic
Models as actors: a language model as an actor the study's steps ask along message flows, prompts kept as data, and the runner that plays a model's pool.
Skill by behaverse
Install
Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.
npx agentmarket install skill/behaverse-agentic
Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.
Get the weekly diff
The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.
About
Use cases: data
Reviews
Write a reviewNo reviews yet. Installed it? Reviews come from verified installers only. How reviews work
Permissions
What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.
- Tools
- No tools found
- Secrets
- None asked for
- Install scripts
- None found
- Runs as
- Python package
Network hosts it talks to 1
codeload.github.com· found in install command
Files it touches
~/.claude/skills/agentic
What's inside
- Skill name
agentic- Description
- Models as actors: a language model as an actor the study's steps ask along message flows, prompts kept as data, and the runner that plays a model's pool. Use when a study asks a model, or evaluates one.
- License
- MIT
- Compatibility
- Local runtime with uv; Ollama on this machine for ollama:// models, ANTHROPIC_API_KEY for claude:// ones.
- Metadata
- schema: agentic.moddle.yaml · schemes: ollama, claude
- Instructions
- 51 lines in SKILL.md · view on GitHub
Before installing
- Ships executable scripts
Files (4)
- SKILL.md
- agentic.moddle.yaml
- local.py
- test_local.py
SKILL.md (first lines)
A model is a pool of its own: a `studyflow:Actor` with no process, named by its `implementation`
(`ollama://gemma4:12b-it-qat`, `claude://claude-haiku-4-5`); the scheme is what makes it this runner's, so the same
pool played by another runner (`simulate://random`) is a one-line change. A step asks it with a message flow to
the pool and one back, and nothing else names a model. `local.py` plays such a pool in a local run: each message
sent to it is one request, and the reply goes back along the pool's flow (`../../packages/runtime-local/CONTRACT.md`, "Messages").
The request is the message's content, in its order. A `Prompt` wired into the asking step gives its text, an image
file in the run or a `data:image/` value goes as an image, and any other value as `<name>: <value>`, the value as text
or, when it is not text, as JSON (`Stimulus: {"Value": "3"}`). The name is that of the element the content's key is (a
property named `instruction`), else the key itself (a field of a Behaverse trial). The runner adds no prompt of its
own. A call that fails answers null, and the run records the error.
A model answers each message on its own, unless its pool's `memory` is `conversation`. Then the runner keeps each
conversation the walk names (one per instance of the pool asking, for the run) and sends it along, turn by turn,
before the new message, so a model answering one subject sees that subject's earlier trials, as sent, and its own
answers to them. A runner started again mid-run has lost them, and fails the message rather than ask without them.
Ollama keeps only the last `num_ctx` tokens of what it is sent, and drops the rest without saying so, so the runner
sends `num_ctx` sized to the conversation: at least 8,192 tokens, in powers of two, estimated generously from the
characters sent, never shrinking for a model within a run (a new size reloads the model), and never past the model's
own context length (`/api/show`), where it fails the message rather than let an earlier turn be dropped. A
conversation that keeps every trial of a long session can need a window of 10^5 tokens, and the memory to hold it.
A pool whose `memory` is `window` is sent the conversation cut to its instructions (the exchanges a prompt delivered
once rode with) and its last `memoryWindow` exchanges (20 unless the actor says), so what it is sent stays the same
size however long the session. The runner keeps the whole conversation, and the record says `memory: window`, the
`window`, and in `sent` how many exchanges it `remembered`.
An `ollama://` model that `/api/show` lists as a `decision` model (d1) writes no text: it returns a probability for
each answer it is offered. The runner asks it `/v1/systemone` one choice question, the message's text as the
question's instructions and the answers the message lists under `ResponseOptions` as its criteria, with the message's
images; a message that lists none fails, since there is nothing to choose among. In a conversation the model, which
keeps no state between requests, receives what its pool remembers of the conversation (all of it, or its window) as
its `state` with every message. Ollama serves the model with a window of its own (its `num_ctx`, else its context
length) that a request cannot raise, so a state past it loses its oldest exchanges first, never the instructions' nor
the message itself, and the record says how many exchanges it `kept` and, when it dropped one, `truncated: true`; a
message that does not fit with its instructions alone fails. The runner draws
the answer from the probabilities with a seed keyed by the study, the participant (who asks) and the trial (how many
messages that participant had sent the pool before), whatever the pool remembers, so a re-run draws the same answers
whatever ids a task gives its messages, and the record keeps the
`probabilities`, the model's own most probable `choice` and `confidence`, and the `draw` (its key and the uniform `u`).
Every Ollama record says which `kind` the model is, `chat` or `decision`.
Each answer comes back with a `record`, which joins the step's record and is never a value a step reads
(`../../packages/runtime-local/CONTRACT.md`, "What comes back"). From Ollama: the model, its digest and quantization level (`/api/tags`),
its default sampling parameters and context length (`/api/show`), Ollama's version (`/api/version`), the options this
runner sends (`think: false`, `stream: false`, and `num_ctx`), the tokens the request was estimated to need
(`contextEstimate`) and those Ollama evaluated for it (`promptTokens`). From Claude: the model asked for, the model the response names, and
`max_tokens`. From both, `sent`: the request's text as sent, up to 4,000 characters, how many images went with it, and
in a conversation its `turn`. The lookups are best effort: one that fails is noted under `unrecorded`, and the answer stands.
`test_local.py` is its self-check.From behaverse/studyflow-modeler, MIT.
More from behaverse/studyflow-modeler
- 0.565score
jspsych
behaverse
Opens a jsPsych timeline (a .json export of its trials) in the modeler as a studyflow of cognitive tasks, one per plugin node, with its consent form detected…
SkillAFreshness: AClaude Code +9 - 0.565score
behaverse
behaverse
The Behaverse assessment battery: its tasks and BDM datasets, and the runner that plays the tasks on the Behaverse Unity WebGL build, in the browser runner's…
SkillAFreshness: AClaude Code +9 - 0.565score
python
behaverse
Executes elements whose implementation is a python:// entry point, with the study's dependencies installed.
SkillAFreshness: AClaude Code +9 - 0.559score
eeg
behaverse
Biosignal recording, preprocessing, and analysis steps as a BPMN extension (time series, event tables, BIDS datasets, recordings, montages, epochs, fits).
SkillAFreshness: AClaude Code +9 - 0.559score
studyflow
behaverse
The core studyflow notation: studies, tasks, data, state, execution, and the sequence between them, as a BPMN extension.
SkillAFreshness: AClaude Code +9 - 0.559score
reachy
behaverse
Motion, media, and sensing elements of the Reachy Mini robot, and the runner that performs them on the robot or its simulator.
SkillAFreshness: AClaude Code +9 - 0.559score
shell
behaverse
Executes elements whose implementation is a shell://<command> entry point: that executable on this machine, with the step's arguments.
SkillAFreshness: AClaude Code +9 - 0.559score
cognitive
behaverse
Cognitive and behavioral research vocabulary: cognitive tasks, questionnaires, instructions, rest periods, screening and allocation gateways, participant pools.
SkillAFreshness: AClaude Code +9 - 0.556score
simulate
behaverse
A simulated participant that knows no task: a pool that answers each trial with one of the options it lists, at random, seeded by the run.
SkillAFreshness: AClaude Code +9
Signals
- Stars
- 0
- Forks
- 0
- Open issues
- 15
- Last commit (this folder)
- Oct 23, 2026 (6 days ago)
- Last release
- Oct 22, 2026 (6 days ago)
From GitHub (fetched Oct 24, 2026).
Details
- License
- MIT
- Repository
- github.com/behaverse/studyflow-modeler
- First seen
- Oct 24, 2026
- Last checked
- Oct 24, 2026
- Source
- GitHubgithub-graphql
More from behaverse
- 0.565score
jspsych
behaverse
Opens a jsPsych timeline (a .json export of its trials) in the modeler as a studyflow of cognitive tasks, one per plugin node, with its consent form detected…
SkillAFreshness: AClaude Code +9 - 0.565score
behaverse
behaverse
The Behaverse assessment battery: its tasks and BDM datasets, and the runner that plays the tasks on the Behaverse Unity WebGL build, in the browser runner's…
SkillAFreshness: AClaude Code +9 - 0.565score
python
behaverse
Executes elements whose implementation is a python:// entry point, with the study's dependencies installed.
SkillAFreshness: AClaude Code +9 - 0.559score
eeg
behaverse
Biosignal recording, preprocessing, and analysis steps as a BPMN extension (time series, event tables, BIDS datasets, recordings, montages, epochs, fits).
SkillAFreshness: AClaude Code +9 - 0.559score
studyflow
behaverse
The core studyflow notation: studies, tasks, data, state, execution, and the sequence between them, as a BPMN extension.
SkillAFreshness: AClaude Code +9 - 0.559score
reachy
behaverse
Motion, media, and sensing elements of the Reachy Mini robot, and the runner that performs them on the robot or its simulator.
SkillAFreshness: AClaude Code +9
Cite this page
agentic skill. Agent Mart. https://agentmart.dev/skills/behaverse-agentic (last updated 2026-10-24)