aikito 1.29.0__tar.gz

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (76) hide show
  1. aikito-1.29.0/.gitignore +14 -0
  2. aikito-1.29.0/LICENSE +22 -0
  3. aikito-1.29.0/PKG-INFO +201 -0
  4. aikito-1.29.0/README.md +186 -0
  5. aikito-1.29.0/pyproject.toml +52 -0
  6. aikito-1.29.0/src/aikito/__init__.py +5 -0
  7. aikito-1.29.0/src/aikito/__main__.py +4 -0
  8. aikito-1.29.0/src/aikito/aikito_add.py +566 -0
  9. aikito-1.29.0/src/aikito/aikito_adopt.py +777 -0
  10. aikito-1.29.0/src/aikito/aikito_completion.py +744 -0
  11. aikito-1.29.0/src/aikito/aikito_completion_powershell.py +219 -0
  12. aikito-1.29.0/src/aikito/aikito_config.py +116 -0
  13. aikito-1.29.0/src/aikito/aikito_diff.py +91 -0
  14. aikito-1.29.0/src/aikito/aikito_doctor.py +1429 -0
  15. aikito-1.29.0/src/aikito/aikito_inbox.py +186 -0
  16. aikito-1.29.0/src/aikito/aikito_init.py +410 -0
  17. aikito-1.29.0/src/aikito/aikito_link.py +68 -0
  18. aikito-1.29.0/src/aikito/aikito_maintain.py +231 -0
  19. aikito-1.29.0/src/aikito/aikito_mcp.py +2179 -0
  20. aikito-1.29.0/src/aikito/aikito_memory.py +400 -0
  21. aikito-1.29.0/src/aikito/aikito_platform.py +357 -0
  22. aikito-1.29.0/src/aikito/aikito_project.py +893 -0
  23. aikito-1.29.0/src/aikito/aikito_registry.py +122 -0
  24. aikito-1.29.0/src/aikito/aikito_render.py +1118 -0
  25. aikito-1.29.0/src/aikito/aikito_resolve.py +360 -0
  26. aikito-1.29.0/src/aikito/aikito_status.py +894 -0
  27. aikito-1.29.0/src/aikito/aikito_subagent.py +1194 -0
  28. aikito-1.29.0/src/aikito/aikito_sync.py +175 -0
  29. aikito-1.29.0/src/aikito/aikito_templates.py +182 -0
  30. aikito-1.29.0/src/aikito/aikito_web.py +459 -0
  31. aikito-1.29.0/src/aikito/aikito_workspace.py +41 -0
  32. aikito-1.29.0/src/aikito/cli.py +2319 -0
  33. aikito-1.29.0/src/aikito/templates/agents/_header.toml +7 -0
  34. aikito-1.29.0/src/aikito/templates/agents/agy.toml +20 -0
  35. aikito-1.29.0/src/aikito/templates/agents/claude-code.toml +22 -0
  36. aikito-1.29.0/src/aikito/templates/agents/codex.toml +25 -0
  37. aikito-1.29.0/src/aikito/templates/agents/dsh.toml +20 -0
  38. aikito-1.29.0/src/aikito/templates/agents/github-copilot.toml +21 -0
  39. aikito-1.29.0/src/aikito/templates/agents/grok.toml +21 -0
  40. aikito-1.29.0/src/aikito/templates/agents/opencode.toml +22 -0
  41. aikito-1.29.0/src/aikito/templates/agents/pi.toml +22 -0
  42. aikito-1.29.0/src/aikito/templates/config.toml +9 -0
  43. aikito-1.29.0/src/aikito/templates/gitignore +7 -0
  44. aikito-1.29.0/src/aikito/templates/global/AGENTS.md +3 -0
  45. aikito-1.29.0/src/aikito/templates/memory/index.md +5 -0
  46. aikito-1.29.0/src/aikito/templates/project/AGENTS.md +0 -0
  47. aikito-1.29.0/src/aikito/templates/project/memory/index.md +3 -0
  48. aikito-1.29.0/src/aikito/templates/skills/aikito/SKILL.md +232 -0
  49. aikito-1.29.0/src/aikito/templates/skills/durable-memory/SKILL.md +71 -0
  50. aikito-1.29.0/src/aikito/templates/skills.toml +4 -0
  51. aikito-1.29.0/src/aikito/templates/subagents.toml +4 -0
  52. aikito-1.29.0/src/aikito/web/app.js +182 -0
  53. aikito-1.29.0/src/aikito/web/assets/ink-horizontal.svg +1 -0
  54. aikito-1.29.0/src/aikito/web/assets/ink-vertical.svg +1 -0
  55. aikito-1.29.0/src/aikito/web/assets/logo.png +0 -0
  56. aikito-1.29.0/src/aikito/web/assets/logo.svg +3 -0
  57. aikito-1.29.0/src/aikito/web/index.html +39 -0
  58. aikito-1.29.0/src/aikito/web/styles.css +75 -0
  59. aikito-1.29.0/tests/test_aikito_add.py +475 -0
  60. aikito-1.29.0/tests/test_aikito_adopt.py +405 -0
  61. aikito-1.29.0/tests/test_aikito_cli.py +2317 -0
  62. aikito-1.29.0/tests/test_aikito_completion.py +360 -0
  63. aikito-1.29.0/tests/test_aikito_completion_powershell.py +60 -0
  64. aikito-1.29.0/tests/test_aikito_config.py +91 -0
  65. aikito-1.29.0/tests/test_aikito_diff.py +146 -0
  66. aikito-1.29.0/tests/test_aikito_doctor.py +1326 -0
  67. aikito-1.29.0/tests/test_aikito_inbox.py +440 -0
  68. aikito-1.29.0/tests/test_aikito_init.py +359 -0
  69. aikito-1.29.0/tests/test_aikito_maintain.py +241 -0
  70. aikito-1.29.0/tests/test_aikito_mcp.py +1403 -0
  71. aikito-1.29.0/tests/test_aikito_platform.py +330 -0
  72. aikito-1.29.0/tests/test_aikito_project.py +509 -0
  73. aikito-1.29.0/tests/test_aikito_status.py +1042 -0
  74. aikito-1.29.0/tests/test_aikito_subagent.py +714 -0
  75. aikito-1.29.0/tests/test_aikito_web.py +269 -0
  76. aikito-1.29.0/tests/test_aikito_workspace.py +49 -0
@@ -0,0 +1,14 @@
1
+ /.agents/
2
+ /inbox
3
+ __pycache__/
4
+ *.py[cod]
5
+ .DS_Store
6
+ /dist/
7
+ /site/
8
+ /.venv-docs/
9
+ /.local/
10
+ uv.lock
11
+
12
+ # Whitelist repository files from user-level global ignore
13
+ !/.gitignore
14
+ !/src/aikito/templates/**/AGENTS.md
aikito-1.29.0/LICENSE ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2026 Ethan St Lee (https://github.com/lsaint)
4
+
5
+
6
+ Permission is hereby granted, free of charge, to any person obtaining a copy
7
+ of this software and associated documentation files (the "Software"), to deal
8
+ in the Software without restriction, including without limitation the rights
9
+ to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
10
+ copies of the Software, and to permit persons to whom the Software is
11
+ furnished to do so, subject to the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be included in all
14
+ copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
17
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
18
+ FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
19
+ AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
20
+ LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
21
+ OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
22
+ SOFTWARE.
aikito-1.29.0/PKG-INFO ADDED
@@ -0,0 +1,201 @@
1
+ Metadata-Version: 2.5
2
+ Name: aikito
3
+ Version: 1.29.0
4
+ Summary: Durable workspace for governing context across AI agents
5
+ Project-URL: Homepage, https://github.com/lsaint/aikito
6
+ Project-URL: Repository, https://github.com/lsaint/aikito
7
+ Project-URL: Documentation, https://github.com/lsaint/aikito/blob/main/docs/README.md
8
+ Project-URL: Issues, https://github.com/lsaint/aikito/issues
9
+ Project-URL: Changelog, https://github.com/lsaint/aikito/blob/main/CHANGELOG.md
10
+ Author: lsaint
11
+ License-Expression: MIT
12
+ License-File: LICENSE
13
+ Requires-Python: >=3.12
14
+ Description-Content-Type: text/markdown
15
+
16
+ <p align="center">
17
+ <picture>
18
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/lsaint/aikito/main/docs/assets/logo-dark.png">
19
+ <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/lsaint/aikito/main/docs/assets/logo-light.png">
20
+ <img src="https://raw.githubusercontent.com/lsaint/aikito/main/docs/assets/logo-light.png" alt="Aikito Logo" width="160">
21
+ </picture>
22
+ </p>
23
+
24
+ <h1 align="center">Aikito</h1>
25
+
26
+ <p align="center">
27
+ <b>Multi-Agent · Multi-Project · Multi-OS · Multi-Machine</b>
28
+ </p>
29
+
30
+ <p align="center">
31
+ <a href="https://github.com/lsaint/aikito/releases"><img src="https://img.shields.io/github/v/release/lsaint/aikito" alt="Release"></a>
32
+ <a href="https://github.com/lsaint/aikito/actions/workflows/ci.yml"><img src="https://github.com/lsaint/aikito/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
33
+ <a href="https://github.com/lsaint/aikito/blob/main/LICENSE"><img src="https://img.shields.io/github/license/lsaint/aikito" alt="License"></a>
34
+ <img src="https://img.shields.io/badge/platform-macOS%20%7C%20Linux%20%7C%20Windows-informational" alt="Platforms">
35
+ <a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/Python-3.12%20%7C%203.13%20%7C%203.14-blue.svg" alt="Python 3.12 | 3.13 | 3.14"></a>
36
+ <img src="https://img.shields.io/badge/dependencies-stdlib%20only-brightgreen.svg" alt="Dependencies: stdlib only">
37
+ </p>
38
+
39
+ [简体中文](README.zh-CN.md) · [Documentation](https://lsaint.github.io/aikito/)
40
+
41
+ Aikito keeps coding-agent instructions, skills, MCP definitions, subagents, and
42
+ durable memory in one Git-managed workspace, shared across agents and projects.
43
+
44
+ Aikito governs the workspace, agents maintain the memory, and you oversee it all.
45
+
46
+ <p align="center">
47
+ <img src="https://raw.githubusercontent.com/lsaint/aikito/main/docs/assets/aikito-overview.png" alt="Aikito overview">
48
+ </p>
49
+
50
+ ## Why Aikito
51
+
52
+ AI agent resources fragment in three directions:
53
+
54
+ - Across tools: each agent requires a different configuration format
55
+ - Across projects: reusable knowledge, skills, and instructions are copied or
56
+ maintained across multiple repositories
57
+ - Across time: valuable decisions and hard-won lessons disappear into old
58
+ sessions
59
+
60
+ Aikito keeps the source files in one personal workspace and connects selected
61
+ resources to each agent and project. No database, daemon, vector store, or
62
+ hosted service is required.
63
+
64
+ ## Durable Memory
65
+
66
+ The bundled [durable-memory skill](src/aikito/templates/skills/durable-memory/SKILL.md)
67
+ guides agents to retrieve useful notes, retain verified conclusions, and update
68
+ stale knowledge. Notes are plain Markdown with Git history.
69
+
70
+ For example, a writing preference belongs in global memory, while an API retry
71
+ decision belongs to its project. A project normally connects to global memory
72
+ and its own notes; these scopes organize context, not filesystem access permissions.
73
+
74
+ New workspaces enable the workflow by default; synchronization connects it to
75
+ agents. See [memory usage and opt-out](docs/durable-memory.md) and
76
+ [why memory needs a maintainer](docs/programming-agent-memory.md).
77
+
78
+ ## Quick Start
79
+
80
+ ### Let your coding agent set it up (recommended)
81
+
82
+ > Install and configure Aikito from https://github.com/lsaint/aikito. Read the
83
+ > README, `templates/skills/aikito/SKILL.md`, and any linked documentation relevant to the
84
+ > setup, then follow their safety requirements to initialize the workspace,
85
+ > synchronize resources with `aikito sync`, and verify the result with `aikito status`.
86
+ > Before importing or changing any existing Agent configuration, show me the
87
+ > planned changes and conflicts and wait for my approval. When setup is
88
+ > complete, summarize what is ready and guide me through the next step, including
89
+ > whether to register my first code project. Do not register a project without
90
+ > my confirmation.
91
+
92
+ <details>
93
+ <summary>Install manually (macOS / Linux / Windows)</summary>
94
+
95
+ On macOS or Linux with Homebrew:
96
+
97
+ ```bash
98
+ brew install lsaint/tap/aikito
99
+ aikito init workspace ~/aikito
100
+ aikito sync --dry-run
101
+ aikito sync
102
+ aikito status
103
+ ```
104
+
105
+ Review the preview before applying synchronization. For existing configuration,
106
+ see [migration and safety](#migration-and-safety).
107
+
108
+ On Windows, use the [PowerShell installation guide](docs/installation.md#install-manually).
109
+
110
+ </details>
111
+
112
+ Continue with the **[four-step tutorial](docs/installation.md)** to connect your
113
+ first project and verify an instruction. For other tasks, use
114
+ [Agent Request Examples](docs/agent-workflow.md).
115
+
116
+ ## See the Result
117
+
118
+ `aikito status` shows resource state across agents. Example output from a
119
+ configured workspace (agents and counts depend on your setup):
120
+
121
+ ```text
122
+ ┌───────────────────────┬──────────────┬────────┬────────────┬───────────┐
123
+ │ Agent │ Instructions │ Skills │ MCP Config │ Subagents │
124
+ ├───────────────────────┼──────────────┼────────┼────────────┼───────────┤
125
+ │ Codex │ ✓ │ 2 › │ 0 │ 0 │
126
+ │ Claude Code │ ✓ │ 2 » │ 0 │ 0 │
127
+ │ Antigravity CLI │ ✓ │ 2 » │ 0 │ 0 │
128
+ │ OpenCode │ ✓ │ 2 › │ 0 │ 0 │
129
+ │ GitHub Copilot CLI │ ✓ │ 2 › │ 0 │ 0 │
130
+ │ DeepSeek Harness │ ✓ │ 2 › │ 0 │ 0 │
131
+ │ Grok Build │ ✓ │ 2 › │ 0 │ 0 │
132
+ │ Pi │ ✓ │ 2 › │ – │ – │
133
+ └───────────────────────┴──────────────┴────────┴────────────┴───────────┘
134
+
135
+ ✓ all synced · 8 agents · 2 skills · 0 notes across 1 scopes
136
+ ```
137
+
138
+ `aikito show memory` lists retained knowledge by scope. This separate example
139
+ shows one global note and two notes for project `example`:
140
+
141
+ ```text
142
+ ┌─────────┬───────────────────┬──────────────────────────────┬───────┬──────┐
143
+ │ Scope │ Note File │ Title │ Index │ Link │
144
+ ├─────────┼───────────────────┼──────────────────────────────┼───────┼──────┤
145
+ │ Global │ writing-style │ Keep explanations concise │ ✓ │ – │
146
+ ├─────────┼───────────────────┼──────────────────────────────┼───────┼──────┤
147
+ │ example │ api-retry-policy │ Retry external APIs safely │ ✓ │ ✓ │
148
+ │ example │ release-checklist │ Release verification steps │ ✓ │ ✓ │
149
+ └─────────┴───────────────────┴──────────────────────────────┴───────┴──────┘
150
+ ```
151
+
152
+ Global notes hold cross-project knowledge; project notes hold local decisions.
153
+ See [memory operations](docs/durable-memory.md#list-memory) for the full workflow.
154
+
155
+ Use [synchronization troubleshooting](docs/troubleshooting.md) to investigate
156
+ missing links, conflicts, or drift. Prefer a browser view? Run
157
+ [`aikito web`](docs/cli-reference.md#aikito-web) for the local, read-only Console.
158
+
159
+ ## Boundaries
160
+
161
+ Aikito uses plain files and Git, with no background service required.
162
+
163
+ <details>
164
+ <summary>What Aikito does not do</summary>
165
+
166
+ - capture every agent action or conversation automatically
167
+ - run a vector store, embedding pipeline, or memory service
168
+ - inject context into every prompt through a background daemon
169
+ - orchestrate supervisor and worker agents
170
+ - replace your coding agent's native runtime
171
+
172
+ </details>
173
+
174
+ ## Migration and Safety
175
+
176
+ Already have agent configuration? Run `aikito adopt` for a read-only import
177
+ preview. Review the plan before applying it; see
178
+ [adoption and backups](docs/safety.md#adoption).
179
+
180
+ Your workspace is a local Git repository. Review it for secrets and private
181
+ data before publishing; removing a secret in a later commit does not erase it
182
+ from history. Read the [safety model](docs/safety.md) and report vulnerabilities
183
+ through the [Security Policy](SECURITY.md).
184
+
185
+ ## Documentation
186
+
187
+ - [Getting started](docs/installation.md): installation through your first working instruction.
188
+ - [Workspace and synchronization](docs/architecture.md): source files, scopes, and resource ownership.
189
+ - [Connect another machine](docs/workspace-portability.md): existing workspaces and custom paths.
190
+ - [CLI reference](docs/cli-reference.md): commands and shell completion.
191
+ - [Comparison](docs/comparison.md) and [FAQ](docs/faq.md): design choices and common questions.
192
+
193
+ [Chat Distiller](https://github.com/lsaint/chat-distiller) can turn browser AI
194
+ conversations into Markdown notes in your Aikito Inbox. See the
195
+ [capture and review workflow](docs/chat-distiller.md).
196
+
197
+ Browse the full [documentation site](https://lsaint.github.io/aikito/) for more.
198
+
199
+ ## Support
200
+
201
+ If you find Aikito useful, you can [support its development](https://lsaint.github.io/donation/?utm_source=github&utm_medium=readme&utm_campaign=aikito).
@@ -0,0 +1,186 @@
1
+ <p align="center">
2
+ <picture>
3
+ <source media="(prefers-color-scheme: dark)" srcset="https://raw.githubusercontent.com/lsaint/aikito/main/docs/assets/logo-dark.png">
4
+ <source media="(prefers-color-scheme: light)" srcset="https://raw.githubusercontent.com/lsaint/aikito/main/docs/assets/logo-light.png">
5
+ <img src="https://raw.githubusercontent.com/lsaint/aikito/main/docs/assets/logo-light.png" alt="Aikito Logo" width="160">
6
+ </picture>
7
+ </p>
8
+
9
+ <h1 align="center">Aikito</h1>
10
+
11
+ <p align="center">
12
+ <b>Multi-Agent · Multi-Project · Multi-OS · Multi-Machine</b>
13
+ </p>
14
+
15
+ <p align="center">
16
+ <a href="https://github.com/lsaint/aikito/releases"><img src="https://img.shields.io/github/v/release/lsaint/aikito" alt="Release"></a>
17
+ <a href="https://github.com/lsaint/aikito/actions/workflows/ci.yml"><img src="https://github.com/lsaint/aikito/actions/workflows/ci.yml/badge.svg" alt="CI"></a>
18
+ <a href="https://github.com/lsaint/aikito/blob/main/LICENSE"><img src="https://img.shields.io/github/license/lsaint/aikito" alt="License"></a>
19
+ <img src="https://img.shields.io/badge/platform-macOS%20%7C%20Linux%20%7C%20Windows-informational" alt="Platforms">
20
+ <a href="https://www.python.org/downloads/"><img src="https://img.shields.io/badge/Python-3.12%20%7C%203.13%20%7C%203.14-blue.svg" alt="Python 3.12 | 3.13 | 3.14"></a>
21
+ <img src="https://img.shields.io/badge/dependencies-stdlib%20only-brightgreen.svg" alt="Dependencies: stdlib only">
22
+ </p>
23
+
24
+ [简体中文](README.zh-CN.md) · [Documentation](https://lsaint.github.io/aikito/)
25
+
26
+ Aikito keeps coding-agent instructions, skills, MCP definitions, subagents, and
27
+ durable memory in one Git-managed workspace, shared across agents and projects.
28
+
29
+ Aikito governs the workspace, agents maintain the memory, and you oversee it all.
30
+
31
+ <p align="center">
32
+ <img src="https://raw.githubusercontent.com/lsaint/aikito/main/docs/assets/aikito-overview.png" alt="Aikito overview">
33
+ </p>
34
+
35
+ ## Why Aikito
36
+
37
+ AI agent resources fragment in three directions:
38
+
39
+ - Across tools: each agent requires a different configuration format
40
+ - Across projects: reusable knowledge, skills, and instructions are copied or
41
+ maintained across multiple repositories
42
+ - Across time: valuable decisions and hard-won lessons disappear into old
43
+ sessions
44
+
45
+ Aikito keeps the source files in one personal workspace and connects selected
46
+ resources to each agent and project. No database, daemon, vector store, or
47
+ hosted service is required.
48
+
49
+ ## Durable Memory
50
+
51
+ The bundled [durable-memory skill](src/aikito/templates/skills/durable-memory/SKILL.md)
52
+ guides agents to retrieve useful notes, retain verified conclusions, and update
53
+ stale knowledge. Notes are plain Markdown with Git history.
54
+
55
+ For example, a writing preference belongs in global memory, while an API retry
56
+ decision belongs to its project. A project normally connects to global memory
57
+ and its own notes; these scopes organize context, not filesystem access permissions.
58
+
59
+ New workspaces enable the workflow by default; synchronization connects it to
60
+ agents. See [memory usage and opt-out](docs/durable-memory.md) and
61
+ [why memory needs a maintainer](docs/programming-agent-memory.md).
62
+
63
+ ## Quick Start
64
+
65
+ ### Let your coding agent set it up (recommended)
66
+
67
+ > Install and configure Aikito from https://github.com/lsaint/aikito. Read the
68
+ > README, `templates/skills/aikito/SKILL.md`, and any linked documentation relevant to the
69
+ > setup, then follow their safety requirements to initialize the workspace,
70
+ > synchronize resources with `aikito sync`, and verify the result with `aikito status`.
71
+ > Before importing or changing any existing Agent configuration, show me the
72
+ > planned changes and conflicts and wait for my approval. When setup is
73
+ > complete, summarize what is ready and guide me through the next step, including
74
+ > whether to register my first code project. Do not register a project without
75
+ > my confirmation.
76
+
77
+ <details>
78
+ <summary>Install manually (macOS / Linux / Windows)</summary>
79
+
80
+ On macOS or Linux with Homebrew:
81
+
82
+ ```bash
83
+ brew install lsaint/tap/aikito
84
+ aikito init workspace ~/aikito
85
+ aikito sync --dry-run
86
+ aikito sync
87
+ aikito status
88
+ ```
89
+
90
+ Review the preview before applying synchronization. For existing configuration,
91
+ see [migration and safety](#migration-and-safety).
92
+
93
+ On Windows, use the [PowerShell installation guide](docs/installation.md#install-manually).
94
+
95
+ </details>
96
+
97
+ Continue with the **[four-step tutorial](docs/installation.md)** to connect your
98
+ first project and verify an instruction. For other tasks, use
99
+ [Agent Request Examples](docs/agent-workflow.md).
100
+
101
+ ## See the Result
102
+
103
+ `aikito status` shows resource state across agents. Example output from a
104
+ configured workspace (agents and counts depend on your setup):
105
+
106
+ ```text
107
+ ┌───────────────────────┬──────────────┬────────┬────────────┬───────────┐
108
+ │ Agent │ Instructions │ Skills │ MCP Config │ Subagents │
109
+ ├───────────────────────┼──────────────┼────────┼────────────┼───────────┤
110
+ │ Codex │ ✓ │ 2 › │ 0 │ 0 │
111
+ │ Claude Code │ ✓ │ 2 » │ 0 │ 0 │
112
+ │ Antigravity CLI │ ✓ │ 2 » │ 0 │ 0 │
113
+ │ OpenCode │ ✓ │ 2 › │ 0 │ 0 │
114
+ │ GitHub Copilot CLI │ ✓ │ 2 › │ 0 │ 0 │
115
+ │ DeepSeek Harness │ ✓ │ 2 › │ 0 │ 0 │
116
+ │ Grok Build │ ✓ │ 2 › │ 0 │ 0 │
117
+ │ Pi │ ✓ │ 2 › │ – │ – │
118
+ └───────────────────────┴──────────────┴────────┴────────────┴───────────┘
119
+
120
+ ✓ all synced · 8 agents · 2 skills · 0 notes across 1 scopes
121
+ ```
122
+
123
+ `aikito show memory` lists retained knowledge by scope. This separate example
124
+ shows one global note and two notes for project `example`:
125
+
126
+ ```text
127
+ ┌─────────┬───────────────────┬──────────────────────────────┬───────┬──────┐
128
+ │ Scope │ Note File │ Title │ Index │ Link │
129
+ ├─────────┼───────────────────┼──────────────────────────────┼───────┼──────┤
130
+ │ Global │ writing-style │ Keep explanations concise │ ✓ │ – │
131
+ ├─────────┼───────────────────┼──────────────────────────────┼───────┼──────┤
132
+ │ example │ api-retry-policy │ Retry external APIs safely │ ✓ │ ✓ │
133
+ │ example │ release-checklist │ Release verification steps │ ✓ │ ✓ │
134
+ └─────────┴───────────────────┴──────────────────────────────┴───────┴──────┘
135
+ ```
136
+
137
+ Global notes hold cross-project knowledge; project notes hold local decisions.
138
+ See [memory operations](docs/durable-memory.md#list-memory) for the full workflow.
139
+
140
+ Use [synchronization troubleshooting](docs/troubleshooting.md) to investigate
141
+ missing links, conflicts, or drift. Prefer a browser view? Run
142
+ [`aikito web`](docs/cli-reference.md#aikito-web) for the local, read-only Console.
143
+
144
+ ## Boundaries
145
+
146
+ Aikito uses plain files and Git, with no background service required.
147
+
148
+ <details>
149
+ <summary>What Aikito does not do</summary>
150
+
151
+ - capture every agent action or conversation automatically
152
+ - run a vector store, embedding pipeline, or memory service
153
+ - inject context into every prompt through a background daemon
154
+ - orchestrate supervisor and worker agents
155
+ - replace your coding agent's native runtime
156
+
157
+ </details>
158
+
159
+ ## Migration and Safety
160
+
161
+ Already have agent configuration? Run `aikito adopt` for a read-only import
162
+ preview. Review the plan before applying it; see
163
+ [adoption and backups](docs/safety.md#adoption).
164
+
165
+ Your workspace is a local Git repository. Review it for secrets and private
166
+ data before publishing; removing a secret in a later commit does not erase it
167
+ from history. Read the [safety model](docs/safety.md) and report vulnerabilities
168
+ through the [Security Policy](SECURITY.md).
169
+
170
+ ## Documentation
171
+
172
+ - [Getting started](docs/installation.md): installation through your first working instruction.
173
+ - [Workspace and synchronization](docs/architecture.md): source files, scopes, and resource ownership.
174
+ - [Connect another machine](docs/workspace-portability.md): existing workspaces and custom paths.
175
+ - [CLI reference](docs/cli-reference.md): commands and shell completion.
176
+ - [Comparison](docs/comparison.md) and [FAQ](docs/faq.md): design choices and common questions.
177
+
178
+ [Chat Distiller](https://github.com/lsaint/chat-distiller) can turn browser AI
179
+ conversations into Markdown notes in your Aikito Inbox. See the
180
+ [capture and review workflow](docs/chat-distiller.md).
181
+
182
+ Browse the full [documentation site](https://lsaint.github.io/aikito/) for more.
183
+
184
+ ## Support
185
+
186
+ If you find Aikito useful, you can [support its development](https://lsaint.github.io/donation/?utm_source=github&utm_medium=readme&utm_campaign=aikito).
@@ -0,0 +1,52 @@
1
+ [build-system]
2
+ requires = ["hatchling"]
3
+ build-backend = "hatchling.build"
4
+
5
+ [project]
6
+ name = "aikito"
7
+ dynamic = ["version"]
8
+ description = "Durable workspace for governing context across AI agents"
9
+ readme = "README.md"
10
+ license = "MIT"
11
+ license-files = ["LICENSE"]
12
+ requires-python = ">=3.12"
13
+ authors = [{ name = "lsaint" }]
14
+ dependencies = []
15
+
16
+ [project.urls]
17
+ Homepage = "https://github.com/lsaint/aikito"
18
+ Repository = "https://github.com/lsaint/aikito"
19
+ Documentation = "https://github.com/lsaint/aikito/blob/main/docs/README.md"
20
+ Issues = "https://github.com/lsaint/aikito/issues"
21
+ Changelog = "https://github.com/lsaint/aikito/blob/main/CHANGELOG.md"
22
+
23
+ [project.scripts]
24
+ aikito = "aikito.cli:main"
25
+
26
+ [tool.hatch.version]
27
+ path = "src/aikito/__init__.py"
28
+
29
+ [tool.hatch.build.targets.wheel]
30
+ packages = ["src/aikito"]
31
+
32
+ [tool.hatch.build.targets.sdist]
33
+ include = [
34
+ "/src",
35
+ "/tests",
36
+ "/README.md",
37
+ "/LICENSE",
38
+ "/pyproject.toml",
39
+ ]
40
+
41
+ [tool.pytest.ini_options]
42
+ pythonpath = ["src"]
43
+ testpaths = ["tests"]
44
+
45
+ [tool.ruff]
46
+ target-version = "py312"
47
+ line-length = 88
48
+
49
+ [tool.ruff.lint]
50
+ # E402 (module import not at top) appears in legacy files; keep it enabled so
51
+ # new violations stand out, but tests get a free sys.path via pytest pythonpath.
52
+ ignore = []
@@ -0,0 +1,5 @@
1
+ """Aikito - Durable workspace for governing context across AI agents."""
2
+
3
+ __version__ = "1.29.0"
4
+
5
+ __all__ = ["__version__"]
@@ -0,0 +1,4 @@
1
+ from .cli import main
2
+
3
+ if __name__ == "__main__":
4
+ main()