naas-abi-cli 1.1.0__tar.gz → 1.3.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 (32) hide show
  1. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/=0.9.13 +1 -1
  2. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/CHANGELOG.md +11 -0
  3. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/PKG-INFO +1 -1
  4. naas_abi_cli-1.3.0/naas_abi_cli/README.md +229 -0
  5. naas_abi_cli-1.3.0/naas_abi_cli/cli/new/templates/project/.gitignore +3 -0
  6. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/pyproject.toml +1 -1
  7. naas_abi_cli-1.1.0/naas_abi_cli/README.md +0 -1
  8. naas_abi_cli-1.1.0/naas_abi_cli/cli/new/templates/project/.gitignore +0 -2
  9. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/.gitignore +0 -0
  10. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/Makefile +0 -0
  11. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/README.md +0 -0
  12. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/__init__.py +0 -0
  13. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/__init__.py +0 -0
  14. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/agent.py +0 -0
  15. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/chat.py +0 -0
  16. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/config.py +0 -0
  17. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/deploy.py +0 -0
  18. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/init.py +0 -0
  19. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/module.py +0 -0
  20. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/__init__.py +0 -0
  21. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/module.py +0 -0
  22. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/new.py +0 -0
  23. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/project.py +0 -0
  24. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/templates/project/.github/workflows/release.yaml +0 -0
  25. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/templates/project/Dockerfile +0 -0
  26. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/templates/project/README.md +0 -0
  27. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/templates/project/config.yaml +0 -0
  28. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/templates/project/pyproject.toml +0 -0
  29. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/new/templates/project/{{project_name_snake}}/__init__.py +0 -0
  30. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/run.py +0 -0
  31. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/secret.py +0 -0
  32. {naas_abi_cli-1.1.0 → naas_abi_cli-1.3.0}/naas_abi_cli/cli/utils/Copier.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Collecting uv
2
2
  Downloading uv-0.9.22-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)
3
3
  Downloading uv-0.9.22-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (22.2 MB)
4
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 22.2/22.2 MB 294.3 MB/s 0:00:00
4
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 22.2/22.2 MB 252.3 MB/s 0:00:00
5
5
  Installing collected packages: uv
6
6
  Successfully installed uv-0.9.22
@@ -2,6 +2,17 @@
2
2
 
3
3
  <!-- version list -->
4
4
 
5
+ ## v1.3.0 (2026-01-08)
6
+
7
+ ### Features
8
+
9
+ - Add README.md to cli
10
+ ([`00c4b50`](https://github.com/jupyter-naas/abi/commit/00c4b50f7eeef7170a52fa9a91c025befde13299))
11
+
12
+
13
+ ## v1.2.0 (2026-01-07)
14
+
15
+
5
16
  ## v1.1.0 (2026-01-07)
6
17
 
7
18
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: naas-abi-cli
3
- Version: 1.1.0
3
+ Version: 1.3.0
4
4
  Summary: Abi cli allowing you to build your AI system.
5
5
  Author-email: Maxime Jublou <maxime@naas.ai>, Florent Ravenel <florent@naas.ai>, Jeremy Ravenel <jeremy@naas.ai>
6
6
  Requires-Python: <4,>=3.10
@@ -0,0 +1,229 @@
1
+ # naas-abi-cli
2
+
3
+ Command Line Interface (CLI) tool for building and managing ABI (Agentic Brain Infrastructure) projects.
4
+
5
+ ## Overview
6
+
7
+ `naas-abi-cli` provides a comprehensive set of commands to create, configure, deploy, and interact with ABI projects. It serves as the primary entry point for developers working with the ABI framework, enabling quick project setup, agent interaction, and cloud deployment.
8
+
9
+ ## Installation
10
+
11
+ Install the CLI tool using pip:
12
+
13
+ ```bash
14
+ pip install naas-abi-cli
15
+ ```
16
+
17
+ ## Available Commands
18
+
19
+ ### Project Management
20
+
21
+ #### `abi new project <project-name> [project-path]`
22
+ Creates a new ABI project with all necessary starter files and dependencies.
23
+
24
+ **What it does:**
25
+ - Creates a new project directory (must be empty or non-existent)
26
+ - Generates project structure with configuration files, Docker setup, and Python package structure
27
+ - Automatically installs required dependencies (`naas-abi-core`, `naas-abi-marketplace`, `naas-abi`, and `naas-abi-cli`)
28
+ - Customizes project files with your project name
29
+
30
+ **Example:**
31
+ ```bash
32
+ abi new project my-abi-project
33
+ ```
34
+
35
+ #### `abi init <path>`
36
+ Initializes a new ABI project in the specified directory.
37
+
38
+ **Example:**
39
+ ```bash
40
+ abi init .
41
+ ```
42
+
43
+ ### Agent Interaction
44
+
45
+ #### `abi chat [module-name] [agent-name]`
46
+ Starts an interactive chat session with an AI agent.
47
+
48
+ **Parameters:**
49
+ - `module-name`: The module containing the agent (default: `naas_abi`)
50
+ - `agent-name`: The specific agent class to use (default: `AbiAgent`)
51
+
52
+ **What it does:**
53
+ - Loads the ABI engine and specified module
54
+ - Launches an interactive terminal chat interface
55
+ - Saves conversations to `storage/datastore/interfaces/terminal_agent/`
56
+
57
+ **Example:**
58
+ ```bash
59
+ abi chat naas_abi AbiAgent
60
+ ```
61
+
62
+ #### `abi agent list`
63
+ Lists all available agents across all loaded modules.
64
+
65
+ **What it does:**
66
+ - Loads the ABI engine with all configured modules
67
+ - Displays a formatted table showing module names and agent class names
68
+
69
+ **Example:**
70
+ ```bash
71
+ abi agent list
72
+ ```
73
+
74
+ ### Configuration Management
75
+
76
+ #### `abi config validate [--configuration-file <path>]`
77
+ Validates the ABI configuration file for correctness.
78
+
79
+ **Options:**
80
+ - `--configuration-file`: Path to configuration file (default: uses `config.yaml` from current directory)
81
+
82
+ **Example:**
83
+ ```bash
84
+ abi config validate
85
+ abi config validate --configuration-file config.prod.yaml
86
+ ```
87
+
88
+ #### `abi config render [--configuration-file <path>]`
89
+ Renders the loaded configuration as YAML output, useful for debugging and verification.
90
+
91
+ **Options:**
92
+ - `--configuration-file`: Path to configuration file (default: uses `config.yaml` from current directory)
93
+
94
+ **Example:**
95
+ ```bash
96
+ abi config render
97
+ ```
98
+
99
+ #### `abi module list`
100
+ Lists all available modules and their enabled/disabled status.
101
+
102
+ **What it does:**
103
+ - Loads the engine configuration
104
+ - Displays a formatted table showing module names and their enabled status
105
+
106
+ **Example:**
107
+ ```bash
108
+ abi module list
109
+ ```
110
+
111
+ ### Deployment
112
+
113
+ #### `abi deploy naas [-e/--env <environment>]`
114
+ Deploys your ABI project to Naas cloud infrastructure.
115
+
116
+ **Options:**
117
+ - `-e, --env`: Environment to use (default: `prod`). Determines which configuration file to load (e.g., `config.prod.yaml`, `config.yaml`)
118
+
119
+ **What it does:**
120
+ - Builds a Docker image of your ABI project
121
+ - Pushes the image to your Naas container registry
122
+ - Creates or updates a space on Naas infrastructure
123
+ - Exposes your ABI REST API at `https://{space-name}.default.space.naas.ai`
124
+
125
+ **Requirements:**
126
+ - Naas API key configured in your configuration file
127
+ - Docker installed and running
128
+ - Deploy section in your `config.yaml` file
129
+
130
+ **Example:**
131
+ ```bash
132
+ abi deploy naas
133
+ abi deploy naas --env prod
134
+ ```
135
+
136
+ ### Secret Management
137
+
138
+ #### `abi secrets naas list`
139
+ Lists all secrets stored in your Naas workspace.
140
+
141
+ **Options:**
142
+ - `--naas-api-key`: Naas API key (default: `NAAS_API_KEY` environment variable)
143
+ - `--naas-api-url`: Naas API URL (default: `https://api.naas.ai`)
144
+
145
+ **Example:**
146
+ ```bash
147
+ abi secrets naas list
148
+ ```
149
+
150
+ #### `abi secrets naas push-env-as-base64`
151
+ Pushes a local `.env` file to Naas as a base64-encoded secret.
152
+
153
+ **Options:**
154
+ - `--naas-api-key`: Naas API key (default: `NAAS_API_KEY` environment variable)
155
+ - `--naas-api-url`: Naas API URL (default: `https://api.naas.ai`)
156
+ - `--naas-secret-name`: Name for the secret in Naas (default: `abi_secrets`)
157
+ - `--env-file`: Path to the environment file (default: `.env.prod`)
158
+
159
+ **Example:**
160
+ ```bash
161
+ abi secrets naas push-env-as-base64 --env-file .env.prod
162
+ ```
163
+
164
+ #### `abi secrets naas get-base64-env`
165
+ Retrieves a base64-encoded secret from Naas and displays it as environment variables.
166
+
167
+ **Options:**
168
+ - `--naas-api-key`: Naas API key (default: `NAAS_API_KEY` environment variable)
169
+ - `--naas-api-url`: Naas API URL (default: `https://api.naas.ai`)
170
+ - `--naas-secret-name`: Name of the secret to retrieve (default: `abi_secrets`)
171
+
172
+ **Example:**
173
+ ```bash
174
+ abi secrets naas get-base64-env
175
+ ```
176
+
177
+ ### Script Execution
178
+
179
+ #### `abi run script <path>`
180
+ Runs a Python script in the context of a loaded ABI engine.
181
+
182
+ **What it does:**
183
+ - Loads the ABI engine with all configured modules
184
+ - Executes the specified Python script with access to the engine and all loaded modules
185
+
186
+ **Example:**
187
+ ```bash
188
+ abi run script scripts/my_script.py
189
+ ```
190
+
191
+ ## Architecture
192
+
193
+ The CLI is built using:
194
+ - **Click**: For command-line interface framework
195
+ - **naas-abi-core**: Core ABI engine and configuration management
196
+ - **naas-abi-marketplace**: Marketplace modules and agents
197
+ - **naas-abi**: Main ABI package
198
+
199
+ The CLI automatically detects if it's being run from within an ABI project (by checking for `pyproject.toml` with `naas-abi-cli` dependency) and uses `uv run` to ensure proper environment isolation.
200
+
201
+ ## Project Structure
202
+
203
+ When you create a new project with `abi new project`, the CLI:
204
+ 1. Uses template files from `cli/new/templates/project/`
205
+ 2. Customizes templates with your project name
206
+ 3. Sets up proper Python package structure
207
+ 4. Installs all required dependencies via `uv`
208
+
209
+ ## Integration with ABI Framework
210
+
211
+ The CLI integrates seamlessly with the ABI ecosystem:
212
+ - **Engine Loading**: Automatically loads modules and agents from your configuration
213
+ - **Configuration Management**: Validates and renders YAML configuration files
214
+ - **Cloud Deployment**: Handles Docker builds and Naas API interactions
215
+ - **Secret Management**: Integrates with Naas secret storage for secure credential management
216
+
217
+ ## Dependencies
218
+
219
+ - Python 3.10+
220
+ - `naas-abi>=1.0.6`
221
+ - `naas-abi-core[qdrant]>=1.1.2`
222
+ - `naas-abi-marketplace[ai-chatgpt]>=1.1.0`
223
+ - `uv` package manager (for dependency management)
224
+
225
+ ## See Also
226
+
227
+ - [ABI Main README](../../../README.md) - Complete ABI framework documentation
228
+ - [naas-abi-core](../naas-abi-core/) - Core engine documentation
229
+ - [naas-abi-marketplace](../naas-abi-marketplace/) - Marketplace modules documentation
@@ -0,0 +1,3 @@
1
+ .venv
2
+ .env
3
+ storage
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "naas-abi-cli"
3
- version = "1.1.0"
3
+ version = "1.3.0"
4
4
  description = "Abi cli allowing you to build your AI system."
5
5
  authors = [{ name = "Maxime Jublou", email = "maxime@naas.ai" },{ name = "Florent Ravenel", email = "florent@naas.ai" }, { name = "Jeremy Ravenel", email = "jeremy@naas.ai" }]
6
6
  requires-python = ">=3.10,<4"
@@ -1 +0,0 @@
1
-
File without changes
File without changes
File without changes