Skip to main content

Codex-based experiment orchestration CLI for research labs

Project description

MyLab

Python Linux CLI Codex

MyLab 是一个专为科研实验设计的基于Codex的Agent框架。

我们希望 AI 能够在一步步的试错中不断探索,从一次次的先前实验中学习到经验;同时,我们也能从 AI 的一次次试错中找到真正的重点,帮助 AI 完成任务。

How It Works

我们把每一次的实验,变成一个Trial

  • MyLab 不只执行一次命令,而是围绕同一个目标持续实验、沉淀总结,再进入下一轮试错
  • 每一轮都会将关键信息沉淀为一个Trial,包括 trial 定义、总结、结果、执行脚本和结构化日志,能让经验一直留存下来
  • 会持续积累“实验怎么跑、哪些方法有效、哪些坑已经踩过”,后续的MyLab会根据当前的目标,从所有历史 Trial 中“选择性地”提取最相关的经验
  • 人可以从这些 Trial 中快速看到 MyLab 到底试了什么、为什么失败、下一个优化方向到哪里,保留有价值的 Trial 作为基石,删除无用的 Trial 以剔除噪音,或者直接在 Trial 文件中写下你的点评

Quick Start

Prerequisites

  • Codex 安装并且登录
  • 科研实验仓库使用Git管理

Install

pip install -e .

Publish to PyPI

GitHub Actions 提供了基于 tag/release 的 PyPI 发布流程,见 .github/workflows/publish.yml

发布前需要在 PyPI 项目里把这个 GitHub 仓库配置为 Trusted Publisher,然后创建一个 GitHub Release;工作流会自动构建并发布当前版本。

Start a Run

# 创建并启动一个新的 run
mylab start --repo /path/to/repo --goal "reproduce table 1" --mode unlimit
# 给 run 指定名字
mylab start --repo /path/to/repo --goal ./goal.md --run run_xx --mode unlimit
# 恢复一个已有 run
mylab start --run run_xx --mode unlimit

Manage Trials

# 先切到要管理的 run
mylab run use run_xx
# 列出当前 run 的 trial
mylab trial ls
# 查看某个 trial
mylab trial cat trial-001
# 删除某个 trial
mylab trial rm trial-001

Documentation

Refer to the documentation for more information on MyLab:

  • Overview: 项目目标、核心工作方式和设计边界
  • Concepts: runtrialtrial.md、shared asset、Telegram guidance、workflow skill
  • CLI Reference: 常用命令、运行方式和低级工具命令
  • Layout: run 根目录与 trial 目录结构说明

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

mylab-0.1.0.tar.gz (76.5 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

mylab-0.1.0-py3-none-any.whl (70.1 kB view details)

Uploaded Python 3

File details

Details for the file mylab-0.1.0.tar.gz.

File metadata

  • Download URL: mylab-0.1.0.tar.gz
  • Upload date:
  • Size: 76.5 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mylab-0.1.0.tar.gz
Algorithm Hash digest
SHA256 d0587c3462066f2880a63e0b8ddb64d2ba396d082f327abef4281443a1803b7a
MD5 a637c0be937705bae2ec08c3105a9cdc
BLAKE2b-256 86e4cc0b75a865f98260fe3cbe639b8a7f6fda8b7838025d8b6e165b33a11a76

See more details on using hashes here.

Provenance

The following attestation bundles were made for mylab-0.1.0.tar.gz:

Publisher: publish.yml on mikumifa/mylab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

File details

Details for the file mylab-0.1.0-py3-none-any.whl.

File metadata

  • Download URL: mylab-0.1.0-py3-none-any.whl
  • Upload date:
  • Size: 70.1 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? Yes
  • Uploaded via: twine/6.1.0 CPython/3.13.7

File hashes

Hashes for mylab-0.1.0-py3-none-any.whl
Algorithm Hash digest
SHA256 8cd655e2932a21d3b3f8322a7abc15c98632856f465bfb3f3871fc2733991605
MD5 f18f215188220aaddfa8f92c96a430f2
BLAKE2b-256 3c30d5fb9b047443caac0305c0f65faf7770c73770fdd3d515bad4429ececc7b

See more details on using hashes here.

Provenance

The following attestation bundles were made for mylab-0.1.0-py3-none-any.whl:

Publisher: publish.yml on mikumifa/mylab

Attestations: Values shown here reflect the state when the release was signed and may no longer be current.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page