Atlas — local-first PM-система для портфеля проектов и задач
Project description
atlas — портфель проектов и задач из командной строки
Локальный PM-центр для всего портфеля: проекты, задачи с измеримым ЦКП, эпики, спринты и опциональная мультиагентная приёмка — одной командой atlas, полностью офлайн, без облака и подписок.
atlas — это персональная система управления проектами в одном SQLite-файле (~/.atlas/atlas.db). Никакого сервера, аккаунтов и сети: источник истины по задачам живёт у тебя на диске. Вывод — JSON по умолчанию, поэтому atlas одинаково удобен и человеку в терминале, и ИИ-агенту в пайплайне: провести триаж, завести задачу, сдать на приёмку — всё скриптуется.
Главные блоки
1. Проекты и портфель — всё в одном месте
Заводишь проекты, помечаешь личные/командные, архивируешь завершённые — и видишь весь портфель одним списком со счётчиками задач. Онбординг существующей папки проекта в atlas (с git/layout-раскладкой) делается через CLI, без ручного переноса.
atlas project add|list|get|update|archive (+ подгруппы git/layout) · atlas dashboard
2. Задачи с обязательным ЦКП и статусами-глаголами
Задача — самодостаточный срез с измеримым Целевым Конечным Продуктом (что её закрывает — результат, а не активность). Статус меняется глаголами, а не полем --status: взял в работу → сдал → закрыл. Новая задача создаётся запланированной (todo/backlog); глаголы уважают lease — мультиагентную блокировку от двойного захвата.
atlas task add --project <p> --title "…" --cpp "…" · start · done · block --reason "…" · unblock · review · cancel
3. Эпики, спринты и декомпозиция
Крупную цель дробишь на независимо проверяемые задачи под эпиком; спринты группируют работу по итерациям. Прогресс виден по закрытым срезам, а не по ощущениям.
atlas epic add|list|get · atlas sprint add|list|get · atlas task update <ref> --epic <e>
4. Чек-листы, теги, участники, гипотезы
У задачи — чек-лист подпунктов, теги для срезов, участники/ассайни и роли. Управленческие гипотезы фиксируются рядом с задачами фальсифицируемым ledger'ом. Фильтруешь портфель по проекту, ассайни, статусу или тегу.
atlas checklist add|check · atlas tag add · atlas member|participant add · atlas hypothesis add|close · atlas task list --project <p> --assignee <s> --status <st>
5. Бэклог-интейк и issue-хендофф
Сырьё и идеи (ЦКП не нужен, проект опционален) кидаешь в бэклог — основной пул интейка (DB-first) — и позже одним движением превращаешь в задачу с ЦКП или в отдельный проект. Баги, фичи и хендоффы между агентами ведёшь через issue. Ничего не теряется между «придумал» и «оформил».
atlas backlog add|list · atlas backlog convert <ref> --as task|project · atlas issue add (bug/feature/handoff)
6. Опциональная приёмка, триаж и журнал
По умолчанию приёмка ВЫКЛЮЧЕНА (соло-режим: start → done напрямую). Включаешь на задаче через --reviewer — тогда закрыть в done может только ревьюер (approve/reject): прозрачный контроль качества в командной/агентной работе. Плюс триаж «в работе / застряло / забыто», журнал действий и бэкапы БД.
atlas task submit|approve|reject · atlas task triage · atlas action-log · atlas backup
Бизнес-применения
- Единый источник истины по задачам. Весь портфель личных и рабочих проектов в одном локальном файле — без Jira, без облака, без утечки данных наружу.
- Дисциплина «результат, а не активность». Обязательный ЦКП на каждой задаче заставляет формулировать измеримый итог, а не список действий — меньше «висяков» и забытых задач.
- Мультиагентный конвейер. Включаешь приёмку — и один агент-исполнитель делает и сдаёт, другой-ревьюер принимает: разделение ролей встроено в статусную модель, а не держится «на честном слове».
- Триаж на старте сессии.
task triageразом показывает, что в работе, что застряло в blocked/review и что забыто — не плодятся заброшенные задачи. - Автоматизация через агентов. JSON-вывод по умолчанию делает atlas встраиваемым: наполнение проектов, массовое заведение задач (
task batch), отчёты по спринту встают в скрипт.
Границы (честно)
- Это локальный однопользовательский PM, не командный SaaS. Реалтайм-синхронизации нескольких людей нет — источник истины лежит в одном
~/.atlas/atlas.db; внешний backend подключается опционально (connect/sync), обмен — осознанно. - Не таск-раннер и не CI. atlas ведёт учёт работы, но сам код не собирает и не деплоит.
- Деструктив требует подтверждения. Архив и
--hardпо умолчанию soft-delete и показывают дельту — массового «снести всё» одной кнопкой нет намеренно.
Для кого
- Соло-разработчики и предприниматели — весь портфель проектов под контролем без тяжёлого таск-трекера.
- Тимлиды и ревьюеры — опциональная мультиагентная/командная приёмка задач с разделением ролей.
- ИИ-агенты и автоматизации — JSON-вывод, всё скриптуется: триаж, заведение задач, отчёты.
- Все, кому важна приватность — данные не покидают машину, никакого облака и аккаунтов.
Установка
Требуется Python ≥ 3.11. Дистрибутив опубликован на PyPI как atlas-pm (CLI-команда — atlas).
0. Одной командой (ставит uv при необходимости, затем atlas-pm):
# Linux / macOS
curl -fsSL https://raw.githubusercontent.com/zZZTeJleTTy3uKZZz/atlas/master/install/install.sh | sh
# Windows (PowerShell)
irm https://raw.githubusercontent.com/zZZTeJleTTy3uKZZz/atlas/master/install/install.ps1 | iex
1. Через skillery (рекомендуется) — ставит CLI и заодно навык для Claude-агента:
skillery install atlas
2. Как обычный CLI-инструмент — с PyPI (uv или pipx, изолированное окружение):
uv tool install atlas-pm # рекомендуется
# или
pipx install atlas-pm
3. Из исходников после клона (разработка / editable):
git clone https://github.com/zZZTeJleTTy3uKZZz/atlas.git
cd atlas
uv tool install --editable . # глобальный бинарь atlas из рабочей копии
# либо dev-окружение: uv sync --extra dev
Проверка: atlas --version (сейчас 0.2.5) и atlas --help.
Обновление
atlas update # self-update с PyPI (детектит uv/pipx/pip и обновляет atlas-pm)
atlas update --check # только показать текущую/доступную версию и метод установки
- PyPI (uv/pipx) —
atlas update(каноничный self-update, модель skillery). - skillery — обновляй через skillery (re-install подтянет новую версию по webhook на git-тег).
- editable (dev) — код живой, обнови
git pullв репозитории. atlas upgrade— legacy (git-install:pipx upgrade atlasиз репо); оставлен для старых установок, новый путь —atlas update.
Быстрый старт
# один раз — прописать Atlas-дисциплину в агентские файлы (CLAUDE.md/AGENTS.md)
atlas init
# инициализировать БД (миграции + справочники) и задать владельца
atlas config set owner alice
atlas project init
# проект (личный по умолчанию; --team — командный)
atlas project add --name "Мой лендинг" --slug my-landing --type personal-project
# задача с обязательным ЦКП
atlas task add --project my-landing --title "Собрать структуру" \
--cpp "Готов wireframe из 6 секций" --priority P1
# взять в работу глаголом (lease-лок), затем закрыть
atlas task start <number|slug>
atlas task done <number|slug>
# триаж портфеля и человекочитаемый список
atlas task triage
atlas --text task list --project my-landing
Технически
- Стек: Python + Typer, хранилище — локальный SQLite (
~/.atlas/atlas.db), миграции Alembic, без сети и внешних сервисов. - Вывод — JSON по умолчанию: результат любой команды пайпится в
jq, скрипты и таблицы (--text/--plain— человекочитаемо). - Команды (в ед. числе):
project · task · epic · sprint · hypothesis · checklist · member · participant · type · status · tag · backlog · issue · idea · inbox · action-log · backup · config · sync · profile; топ-уровень —dashboard · init · stats · connect/disconnect · update · logs. - Справка:
atlas <группа> --helpпо каждой группе — источник правды; методология задач и эпиков — вSKILL.md.
Лицензия
MIT.
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file atlas_pm-0.2.8.tar.gz.
File metadata
- Download URL: atlas_pm-0.2.8.tar.gz
- Upload date:
- Size: 354.4 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
aaf6af226a5197cf3fb718f5eab716a7aee5ec8d9ddc00a77dd396912a3a3b93
|
|
| MD5 |
4e9ccb792b7c3def512b23bce88fe4a4
|
|
| BLAKE2b-256 |
1ffb3b4befce0a8824abe9759c126d738587793e613f1a111d1ee212fd56f44b
|
File details
Details for the file atlas_pm-0.2.8-py3-none-any.whl.
File metadata
- Download URL: atlas_pm-0.2.8-py3-none-any.whl
- Upload date:
- Size: 289.6 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: uv/0.11.29 {"installer":{"name":"uv","version":"0.11.29","subcommand":["publish"]},"python":null,"implementation":{"name":null,"version":null},"distro":{"name":"Ubuntu","version":"24.04","id":"noble","libc":null},"system":{"name":null,"release":null},"cpu":null,"openssl_version":null,"setuptools_version":null,"rustc_version":null,"ci":true}
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c67be294a3358f7ed5128ed8c583c9f64483a7c33960b65ad687fc1dde947762
|
|
| MD5 |
f05fff2e7cccd7a329bac9167a352863
|
|
| BLAKE2b-256 |
7c565eae156dee087113939825eb911fdf6eed308224e6e3041139d6d0ce590e
|