Code
Hub
Workspaces
Following
Trending
Connect
MCP
copy
Create free account
hub
/
github.com/OpenRaiser/NanoResearch
/ types & classes
Types & classes
194 in github.com/OpenRaiser/NanoResearch
⨍
Functions
1,278
◇
Types & classes
194
↳
Endpoints
2
↓ 30 callers
Class
ToolDefinition
A single callable tool available to an agent.
nanoresearch/agents/tools.py:18
↓ 22 callers
Class
PreflightResult
Result of a single preflight check.
nanoresearch/schemas/iteration.py:27
↓ 15 callers
Class
ConsistencyIssue
A cross-section consistency issue found in the paper.
nanoresearch/schemas/review.py:30
↓ 13 callers
Class
StageModelConfig
Configuration for a single pipeline stage.
nanoresearch/config.py:34
↓ 7 callers
Class
SectionReview
Review of a single paper section.
nanoresearch/schemas/review.py:10
↓ 6 callers
Class
RateLimiter
Simple token-bucket rate limiter.
mcp_server/utils.py:19
↓ 6 callers
Class
RuntimeEnvironmentManager
Prepare Python runtimes for local experiment execution.
nanoresearch/agents/runtime_env/__init__.py:59
↓ 5 callers
Class
DependencyInstallPlan
Concrete pip-install strategy for a generated experiment project.
nanoresearch/agents/runtime_env/_types.py:11
↓ 5 callers
Class
ExperimentHypothesis
A hypothesis for a single iteration round.
nanoresearch/schemas/iteration.py:8
↓ 5 callers
Class
ReviewOutput
Complete output of the review stage.
nanoresearch/schemas/review.py:56
↓ 5 callers
Class
RoundResult
Complete record for one iteration round.
nanoresearch/schemas/iteration.py:81
↓ 5 callers
Class
StageRecord
Record of a single pipeline stage execution.
nanoresearch/schemas/manifest.py:153
↓ 5 callers
Class
ToolRegistry
Registry of tools that can be passed to an LLM via function calling.
nanoresearch/agents/tools.py:27
↓ 4 callers
Class
MemoryStore
Persistent long-term memory store under ``~/.nanoresearch/memory``.
nanoresearch/evolution/memory.py:255
↓ 4 callers
Class
ModelDispatcher
Dispatches LLM calls via the OpenAI-compatible API. All stages use the same base_url + api_key (your self-hosted endpoint). Each stage has it
nanoresearch/pipeline/multi_model.py:42
↓ 4 callers
Class
RAMOutput
Parsed output from a single RAM invocation.
nanoresearch/evolution/ram.py:37
↓ 4 callers
Class
SkillDomain
nanoresearch/evolution/skills.py:26
↓ 3 callers
Class
FigureAgent
nanoresearch/agents/figure_gen/__init__.py:32
↓ 3 callers
Class
PipelineOrchestrator
Runs the standard 6-stage research pipeline.
nanoresearch/pipeline/orchestrator.py:25
↓ 3 callers
Class
PreflightChecker
Run static preflight checks on a generated code project.
nanoresearch/agents/preflight.py:31
↓ 3 callers
Class
ReviewAgent
nanoresearch/agents/review/__init__.py:48
↓ 3 callers
Class
RouterDecision
nanoresearch/router_policy.py:72
↓ 3 callers
Class
SkillLifecycleResult
nanoresearch/evolution/skills.py:122
↓ 3 callers
Class
UnifiedPipelineOrchestrator
Main research pipeline orchestrator for new runs.
nanoresearch/pipeline/unified_orchestrator.py:8
↓ 3 callers
Class
WritingAgent
Generates a full LaTeX research paper from experiment results.
nanoresearch/agents/writing/__init__.py:716
↓ 2 callers
Class
CodingAgent
Generates runnable training code + SLURM scripts based on cloned repos and experiment plan.
nanoresearch/agents/coding.py:26
↓ 2 callers
Class
ComputeRequirements
Estimated compute resources needed for the experiment.
nanoresearch/schemas/experiment.py:10
↓ 2 callers
Class
EvidenceBundle
Collection of quantitative evidence extracted from literature.
nanoresearch/schemas/evidence.py:34
↓ 2 callers
Class
EvoPipelineOrchestrator
Deep pipeline with explicit skill, memory, and policy evolution enabled. The evo mode intentionally reuses the stable deep stage order and only
nanoresearch/pipeline/evo_orchestrator.py:13
↓ 2 callers
Class
ExecutionAgent
Submits SLURM training jobs, monitors them, debugs failures, and collects results.
nanoresearch/agents/execution/__init__.py:22
↓ 2 callers
Class
ExperimentAgent
nanoresearch/agents/experiment/__init__.py:187
↓ 2 callers
Class
FeedbackAnalyzer
Analyze experiment results and produce structured feedback.
nanoresearch/agents/feedback_analyzer.py:38
↓ 2 callers
Class
IdeationAgent
nanoresearch/agents/ideation.py:113
↓ 2 callers
Class
ImportChecker
Check cross-file import consistency using AST parsing. Scans all .py files in a directory and detects: 1. ``from X import Y`` where Y doesn't
nanoresearch/agents/import_checker.py:8
↓ 2 callers
Class
InvalidTransitionError
Raised when an invalid stage transition is attempted.
nanoresearch/pipeline/state.py:14
↓ 2 callers
Class
IterationState
Top-level state tracking across all iteration rounds.
nanoresearch/schemas/iteration.py:94
↓ 2 callers
Class
LLMError
Error from LLM interaction (JSON parse failure, empty response, etc.).
nanoresearch/exceptions.py:15
↓ 2 callers
Class
LLMResult
Result from a single LLM call, including usage metadata.
nanoresearch/pipeline/cost_tracker.py:10
↓ 2 callers
Class
MinimumSuccessCriteria
Contract thresholds used to determine whether a run is complete enough.
nanoresearch/schemas/experiment.py:147
↓ 2 callers
Class
PlanningAgent
nanoresearch/agents/planning.py:38
↓ 2 callers
Class
PreflightReport
Aggregated preflight check report.
nanoresearch/schemas/iteration.py:36
↓ 2 callers
Class
SkillContext
Extracted static skill context ready for prompt injection.
nanoresearch/skills.py:68
↓ 2 callers
Class
StageCost
Accumulated cost for one pipeline stage.
nanoresearch/pipeline/cost_tracker.py:34
↓ 2 callers
Class
TrainingDynamics
Heuristic analysis of training behavior from training_log.
nanoresearch/schemas/iteration.py:48
↓ 2 callers
Class
UnifiedSkillMatcher
Compose K-Dense static skills with evolved NL/script skills.
nanoresearch/skills.py:518
↓ 2 callers
Class
_SecretRedactionFilter
nanoresearch/cli.py:85
↓ 1 callers
Class
AnalysisAgent
Analyzes real experiment results and generates publication figures from actual data.
nanoresearch/agents/analysis/__init__.py:41
↓ 1 callers
Class
ArtifactRecord
A registered output artifact.
nanoresearch/schemas/manifest.py:165
↓ 1 callers
Class
ChatMemory
Per-chat persistent memory: conversation history + condensed summary + facts.
nanoresearch/feishu_bot.py:89
↓ 1 callers
Class
ClusterExecutor
Execute experiments on a SLURM cluster (local or remote).
nanoresearch/agents/cluster_executor.py:47
↓ 1 callers
Class
CodeSnapshotManager
Manages zip-based snapshots of a code directory.
nanoresearch/agents/code_editor.py:27
↓ 1 callers
Class
ContributionClaim
A single contribution claim extracted from the Introduction.
nanoresearch/agents/writing/_types.py:59
↓ 1 callers
Class
ContributionContract
Structured claims extracted from Introduction, injected into later sections. Ensures consistency: every claim in Introduction has matching conten
nanoresearch/agents/writing/_types.py:67
↓ 1 callers
Class
ConversationCondenser
Event-sourced conversation memory with LLM-based condensation. Design principles (inspired by OpenHands context condenser): 1. Append-only
nanoresearch/agents/paper_condenser.py:56
↓ 1 callers
Class
CostTracker
Accumulates LLM costs across all pipeline stages.
nanoresearch/pipeline/cost_tracker.py:60
↓ 1 callers
Class
DebugAgent
Reads error context, diagnoses failures, and patches code.
nanoresearch/agents/debug.py:31
↓ 1 callers
Class
ExecutionProfile
High-level execution behavior presets for the unified pipeline.
nanoresearch/config.py:18
↓ 1 callers
Class
ExperimentExecutionPolicy
Central execution-time remediation policy for local experiment runs.
nanoresearch/agents/runtime_env/_types.py:45
↓ 1 callers
Class
ExtractedMetric
A single quantitative metric extracted from a published paper.
nanoresearch/schemas/evidence.py:8
↓ 1 callers
Class
FeedbackAnalysis
Structured feedback from one iteration round.
nanoresearch/schemas/iteration.py:59
↓ 1 callers
Class
FeishuBot
飞书 NanoResearch 机器人 -- AI 对话 + Pipeline 管理。
nanoresearch/feishu_bot.py:224
↓ 1 callers
Class
GroundingPacket
Structured summary of all evidence available for paper writing. Built once from execution/analysis outputs, consumed by every section generat
nanoresearch/agents/writing/_types.py:11
↓ 1 callers
Class
IdeationOutput
Complete output of the ideation stage.
nanoresearch/schemas/ideation.py:106
↓ 1 callers
Class
InteractiveCodeEditor
LLM-powered interactive code editor with backup/rollback.
nanoresearch/agents/code_editor.py:177
↓ 1 callers
Class
JSONFormatter
Formats log records as single-line JSON objects.
nanoresearch/logging_config.py:12
↓ 1 callers
Class
MemoryEvolutionAnalyzer
Summarize stage traces into research-facing direction/strategy memories.
nanoresearch/evolution/memory_analyzer.py:10
↓ 1 callers
Class
MemoryRecord
nanoresearch/evolution/memory.py:154
↓ 1 callers
Class
MemoryScope
nanoresearch/evolution/memory.py:141
↓ 1 callers
Class
MemoryType
nanoresearch/evolution/memory.py:135
↓ 1 callers
Class
NaturalLanguageSkill
nanoresearch/evolution/skills.py:83
↓ 1 callers
Class
PaperEditor
ReAct agent that orchestrates paper editing via tool calls.
nanoresearch/agents/paper_editor.py:56
↓ 1 callers
Class
PaperMode
Paper type/mode for the research pipeline.
nanoresearch/schemas/manifest.py:38
↓ 1 callers
Class
PaperReference
A single paper from literature search.
nanoresearch/schemas/ideation.py:12
↓ 1 callers
Class
PaperSkeleton
Complete paper structure for LaTeX generation.
nanoresearch/schemas/paper.py:52
↓ 1 callers
Class
PaperSnapshotManager
Zip-based backup for the drafts/ + figures/ directories.
nanoresearch/agents/paper_snapshot.py:28
↓ 1 callers
Class
PipelineStage
Stages of the research pipeline.
nanoresearch/schemas/manifest.py:12
↓ 1 callers
Class
PipelineStateMachine
Manages state transitions for the research pipeline.
nanoresearch/pipeline/state.py:32
↓ 1 callers
Class
ProgressEmitter
Emits pipeline progress events to a JSON file. The file is atomically overwritten on each event so that external consumers can poll it safely
nanoresearch/pipeline/progress.py:19
↓ 1 callers
Class
ProjectManifestSnapshot
Local manifest inspection snapshot shared across execution backends.
nanoresearch/agents/runtime_env/_types.py:21
↓ 1 callers
Class
RAMBackend
nanoresearch/evolution/ram.py:32
↓ 1 callers
Class
RAMDataCollector
Collects (x, y, o) triples for SDPO training. Lifecycle per triple: 1. ``record_input()`` — called when RAM receives input, returns tripl
nanoresearch/evolution/ram_data.py:40
↓ 1 callers
Class
RAMModule
Local language model for reflection-augmentation. The model is lazily loaded on first ``generate()`` call. If ``enabled`` is ``False``, ``gen
nanoresearch/evolution/ram.py:101
↓ 1 callers
Class
RAMTriple
One complete (x, y, o) interaction triple.
nanoresearch/evolution/ram_data.py:25
↓ 1 callers
Class
ResearchConfig
Top-level research configuration.
nanoresearch/config.py:52
↓ 1 callers
Class
ResearchMemoryKind
nanoresearch/evolution/memory.py:147
↓ 1 callers
Class
ResearchMemoryRecord
nanoresearch/evolution/memory.py:168
↓ 1 callers
Class
RouterPolicyRunner
Run the SDPO router online, or produce a schema-compatible fallback.
nanoresearch/router_policy.py:93
↓ 1 callers
Class
RouterUpdateManager
Router-layer write-back for long-term memory and skill evolution.
nanoresearch/router_policy.py:212
↓ 1 callers
Class
ScriptSkill
nanoresearch/evolution/skills.py:106
↓ 1 callers
Class
ScriptSkillCategory
nanoresearch/evolution/skills.py:42
↓ 1 callers
Class
ScriptTestStatus
nanoresearch/evolution/skills.py:48
↓ 1 callers
Class
Section
A single section of the paper.
nanoresearch/schemas/paper.py:8
↓ 1 callers
Class
SetupAgent
Searches for relevant code repos, clones them, and downloads required resources.
nanoresearch/agents/setup.py:62
↓ 1 callers
Class
SkillCandidate
nanoresearch/evolution/skills.py:54
↓ 1 callers
Class
SkillEntry
Index entry for a single static skill.
nanoresearch/skills.py:53
↓ 1 callers
Class
SkillEvolutionStore
Persistent adaptive skill registry under ``~/.nanoresearch/skills``.
nanoresearch/evolution/skills.py:129
↓ 1 callers
Class
SkillMatcher
Index, match, and extract static skills from one or more directories.
nanoresearch/skills.py:162
↓ 1 callers
Class
SkillReview
nanoresearch/evolution/skills.py:69
↓ 1 callers
Class
UnifiedSkillContext
Combined static and evolved skill context for prompt injection.
nanoresearch/skills.py:500
↓ 1 callers
Class
WorkspaceManifest
Master manifest for a research session workspace.
nanoresearch/schemas/manifest.py:175
next →
1–100 of 194, ranked by callers