원클릭으로
agentsociety-research-pipeline
// Use when starting or resuming an AgentSociety research workspace, deciding which research skill to invoke next, checking current pipeline state, or sizing a simulation before configuration and module creation.
// Use when starting or resuming an AgentSociety research workspace, deciding which research skill to invoke next, checking current pipeline state, or sizing a simulation before configuration and module creation.
Use when an experiment run has completed and the user wants rigorous interpretation, claim-driven charts, bilingual reports, or cross-hypothesis synthesis from simulation data. Also use when multiple charts or PNG/JPG assets must be assembled into one labeled composite figure. Requires high-quality narrative and evidence traceability, not only harness gate PASS.
Create distinctive, production-grade frontend interfaces with high design quality. Use when building or polishing analysis HTML reports under agentsociety-analysis — read via support/frontend-design/ inside that skill, not as a separate pipeline skill.
Multi-modal interactive data presentation for agentsociety-analysis — EDA bundle (PyGWalker, Plotly, sortable tables, eda_hub), plotly/altair claim charts, HTML tab surfaces. Use in explore, refine, and produce stages.
Composable HTML block patterns for agentsociety-analysis reports — KPI strips, figure cards, Mermaid, EDA tabs, optional interactive chart iframes. Use during Stage 5 produce when authoring report_zh.html / report_en.html.
Publication-quality chart patterns for agentsociety-analysis Stage 4 refine — Okabe-Ito palettes, seaborn CI bands, small multiples, error bars, grayscale-safe encoding. Use when writing run-code chart scripts or reviewing chart QA failures.
Update internal emotion and intention from observation, needs, memory, and recent plan state. Use after observation and before planning/action.
| name | agentsociety-research-pipeline |
| version | 1.0.0 |
| description | Use when starting or resuming an AgentSociety research workspace, deciding which research skill to invoke next, checking current pipeline state, or sizing a simulation before configuration and module creation. |
Orchestrates the AgentSociety research workflow. Determines which skill to invoke based on the current workspace state and user intent.
The research pipeline is a directed workflow: literature search → hypothesis → experiment config → run → analysis → paper. Supporting skills (scan-modules, create-agent, create-env-module, web-research, datasets) branch off the main trunk at specific points.
Before entering experiment-config, create-agent, or create-env-module, confirm the simulation scale budget:
If any of these are missing, ask one round of clarifying questions first. Present 2-3 approaches with trade-offs and a recommendation, then route into the appropriate skill once the budget is fixed.
If the task may depend on external data, treat dataset access as a first-class branch rather than an afterthought.
agentsociety-use-dataset to search, inspect, and download datasets from the platform.agentsociety-create-dataset when the work needs packaging, validation, upload, or publishing of a dataset.At the beginning of a new session or resumption, run:
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline where-am-i --json
This reads .agentsociety/progress.json to determine the current stage. If the file does not exist, fall back to file-existence detection and then bootstrap tracking with init.
Every pipeline transition must be persisted with an explicit git commit. Hook-based auto-commit approaches are unreliable — always commit manually.
When bootstrapping a new workspace with research-pipeline init:
# 1. Init the workspace directory if not already a git repo
git init
# 2. Create progress tracking
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline init --topic "TOPIC"
# 3. Initial commit
git add -A && git commit -m "init: bootstrap research pipeline"
After every call to research-pipeline update-stage, commit the current iteration's changes:
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline update-stage STAGE STATUS
git add -A && git commit -m "pipeline: STAGE → STATUS"
For example:
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline update-stage literature_search completed
git add -A && git commit -m "pipeline: literature_search → completed"
git is not initialized in the workspace, run git init first.pipeline: STAGE → STATUS.git add -A to capture all changes produced by the current stage.Use where-am-i --json whenever the current stage is unclear.
.agentsociety/progress.json exists, trust current_stage as the primary routing signal.current_stage | Route to Skill |
|---|---|
literature_search | literature-search |
hypothesis | hypothesis |
experiment_config | experiment-config |
run_experiment | run-experiment |
analysis | analysis |
generate_paper | paper-toolkit plugin |
| Command | Purpose |
|---|---|
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline init --topic "TEXT" | Bootstrap progress.json (also git init + initial commit if needed) |
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline status | Show progress summary |
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline where-am-i --json | Get current stage as JSON |
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline update-stage STAGE STATUS | Update stage status (then git add -A && git commit) |
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline set-verification STAGE STATUS | Update stage verification status |
$PYTHON_PATH .agentsociety/bin/ags.py research-pipeline next-action --json | Get the recommended next action |
digraph research_pipeline {
rankdir=LR;
node [shape=box, style=filled, fillcolor="#E8F4FD"];
decide [label="where-am-i"];
lit [label="literature-search"];
hypo [label="hypothesis"];
scan [label="scan-modules\noptional helper"];
exp [label="experiment-config"];
run [label="run-experiment"];
analysis [label="analysis"];
paper [label="paper-toolkit plugin"];
agent [label="create-agent"];
env [label="create-env-module"];
create_ds [label="create-dataset"];
use_ds [label="use-dataset"];
web [label="web-research"];
decide -> lit;
decide -> hypo;
decide -> exp;
decide -> run;
decide -> analysis;
decide -> paper;
lit -> hypo;
lit -> web [style=dashed, label="supplementary context"];
hypo -> scan [style=dashed, label="names uncertain"];
scan -> hypo;
hypo -> exp;
exp -> scan [style=dashed, label="need discovery or validation"];
scan -> exp;
exp -> agent [style=dashed, label="missing agent"];
agent -> exp;
exp -> env [style=dashed, label="missing env"];
env -> exp;
exp -> create_ds [style=dashed, label="publish dataset"];
exp -> use_ds [style=dashed, label="need external data"];
use_ds -> exp;
exp -> run;
run -> analysis;
analysis -> paper;
analysis -> hypo [style=dashed, label="revise hypothesis"];
analysis -> use_ds [style=dashed, label="comparison data"];
analysis -> web [style=dashed, label="supplementary context"];
}
| # | Skill | Produces | Consumes |
|---|---|---|---|
| 1 | literature-search | papers/, papers/literature_index.json | TOPIC.md |
| 2 | hypothesis | hypothesis_{id}/HYPOTHESIS.md, SIM_SETTINGS.json | literature index |
| 3 | experiment-config | init_config.json, steps.yaml, config_params.py | SIM_SETTINGS.json |
| 4 | run-experiment | run/sqlite.db, run/stdout.log, run/stderr.log, run/artifacts/ | init_config.json + steps.yaml |
| 5 | analysis | presentation/hypothesis_{id}/report.md, charts, data | run/sqlite.db |
| 6 | paper-toolkit plugin | <ws>/paper/compile_runs/<RUN>/main.pdf | analysis report + literature index |
| Branch Skill | Called By | When |
|---|---|---|
| scan-modules | hypothesis, experiment-config | When module names are unknown or need validation |
| create-agent | experiment-config | When needed agent class doesn't exist |
| create-env-module | experiment-config | When needed env module doesn't exist |
| web-research | literature-search, hypothesis, analysis | When supplementary non-academic context needed |
| create-dataset | experiment-config | When packaging data for upload or publishing |
| use-dataset | literature-search, hypothesis, experiment-config, analysis | When searching, downloading, or inspecting datasets |
| Skill | Trigger Keywords |
|---|---|
| literature-search | "literature", "papers", "related work", "background research" |
| hypothesis | "hypothesis", "research question", "control", "treatment", "experiment groups" |
| experiment-config | "configure experiment", "init_config", "steps.yaml", "set up experiment" |
| run-experiment | "run experiment", "start simulation", "check status", "stop experiment" |
| analysis | "analyze", "results", "visualization", "chart", "report" |
| paper-toolkit plugin | "write paper", "academic paper", "generate paper", "Nature paper" |
| scan-modules | "available modules", "list agents", "find environment" |
| create-agent | "create agent", "custom agent", "new agent type" |
| create-env-module | "create environment", "custom module", "env module" |
| web-research | "web search", "current events", "recent developments" |
| create-dataset | "create dataset", "upload dataset", "publish data" |
| use-dataset | "download dataset", "find data", "browse datasets", "search datasets", "dataset search" |
| File | Git | Purpose |
|---|---|---|
.agentsociety/progress.json | Committable | Stage tracker with status, timestamps, attempt counts |
run-experiment produces sqlite.dbexperiment-config check before run-experimentpaper-toolkit requires analysis reports or equivalent evidence artifacts to existresearch-pipeline update-stage after completing a pipeline stageresearch-pipeline update-stage — see Git Checkpoint Disciplinegit init (if needed) followed by an initial commit