naas-abi-cli 1.6.1__tar.gz → 1.8.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 (36) hide show
  1. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/=0.9.13 +1 -1
  2. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/CHANGELOG.md +6 -0
  3. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/PKG-INFO +1 -1
  4. naas_abi_cli-1.8.0/naas_abi_cli/cli/new/module.py +55 -0
  5. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/project.py +4 -0
  6. naas_abi_cli-1.6.1/naas_abi_cli/cli/new/templates/project/{{project_name_snake}}/agents/{{project_name_pascal}}Agent.py → naas_abi_cli-1.8.0/naas_abi_cli/cli/new/templates/module/agents/{{module_name_pascal}}Agent.py +5 -5
  7. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/templates/project/pyproject.toml +7 -0
  8. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/pyproject.toml +1 -1
  9. naas_abi_cli-1.6.1/naas_abi_cli/cli/new/module.py +0 -10
  10. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/.gitignore +0 -0
  11. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/Makefile +0 -0
  12. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/README.md +0 -0
  13. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/__init__.py +0 -0
  14. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/__init__.py +0 -0
  15. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/agent.py +0 -0
  16. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/chat.py +0 -0
  17. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/config.py +0 -0
  18. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/deploy.py +0 -0
  19. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/init.py +0 -0
  20. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/module.py +0 -0
  21. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/__init__.py +0 -0
  22. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/new.py +0 -0
  23. {naas_abi_cli-1.6.1/naas_abi_cli/cli/new/templates/project/{{project_name_snake}} → naas_abi_cli-1.8.0/naas_abi_cli/cli/new/templates/module}/__init__.py +0 -0
  24. {naas_abi_cli-1.6.1/naas_abi_cli/cli/new/templates/project → naas_abi_cli-1.8.0/naas_abi_cli/cli/new/templates/module/agents}/README.md +0 -0
  25. {naas_abi_cli-1.6.1/naas_abi_cli/cli/new/templates/project/{{project_name_snake}}/agents → naas_abi_cli-1.8.0/naas_abi_cli/cli/new/templates/module/orchestrations}/README.md +0 -0
  26. {naas_abi_cli-1.6.1/naas_abi_cli/cli/new/templates/project/{{project_name_snake}}/orchestrations → naas_abi_cli-1.8.0/naas_abi_cli/cli/new/templates/module/pipelines}/README.md +0 -0
  27. {naas_abi_cli-1.6.1/naas_abi_cli/cli/new/templates/project/{{project_name_snake}}/pipelines → naas_abi_cli-1.8.0/naas_abi_cli/cli/new/templates/module/workflows}/README.md +0 -0
  28. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/templates/project/.github/workflows/release.yaml +0 -0
  29. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/templates/project/.gitignore +0 -0
  30. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/templates/project/Dockerfile +0 -0
  31. {naas_abi_cli-1.6.1/naas_abi_cli/cli/new/templates/project/{{project_name_snake}}/workflows → naas_abi_cli-1.8.0/naas_abi_cli/cli/new/templates/project}/README.md +0 -0
  32. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/templates/project/config.prod.yaml +0 -0
  33. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/new/templates/project/config.yaml +0 -0
  34. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/run.py +0 -0
  35. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/secret.py +0 -0
  36. {naas_abi_cli-1.6.1 → naas_abi_cli-1.8.0}/naas_abi_cli/cli/utils/Copier.py +0 -0
@@ -1,6 +1,6 @@
1
1
  Collecting uv
2
2
  Downloading uv-0.9.26-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl.metadata (11 kB)
3
3
  Downloading uv-0.9.26-py3-none-manylinux_2_17_x86_64.manylinux2014_x86_64.whl (23.3 MB)
4
- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 23.3/23.3 MB 292.5 MB/s 0:00:00
4
+ ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 23.3/23.3 MB 124.1 MB/s 0:00:00
5
5
  Installing collected packages: uv
6
6
  Successfully installed uv-0.9.26
@@ -2,6 +2,12 @@
2
2
 
3
3
  <!-- version list -->
4
4
 
5
+ ## v1.8.0 (2026-01-25)
6
+
7
+
8
+ ## v1.7.0 (2026-01-25)
9
+
10
+
5
11
  ## v1.6.1 (2026-01-24)
6
12
 
7
13
 
@@ -1,6 +1,6 @@
1
1
  Metadata-Version: 2.4
2
2
  Name: naas-abi-cli
3
- Version: 1.6.1
3
+ Version: 1.8.0
4
4
  Summary: Abi cli allowing you to build your AI system.
5
5
  Project-URL: Homepage, https://github.com/jupyter-naas/abi
6
6
  Project-URL: Repository, https://github.com/jupyter-naas/abi/tree/main/libs/naas-abi-cli
@@ -0,0 +1,55 @@
1
+ import os
2
+
3
+ import click
4
+ import naas_abi_cli
5
+ from naas_abi_cli.cli.utils.Copier import Copier
6
+
7
+ from .new import new
8
+
9
+
10
+ def sanitize_module_name(module_name: str) -> str:
11
+ return module_name.replace("-", "_").replace(" ", "_").lower()
12
+
13
+
14
+ @new.command("module")
15
+ @click.argument("module_name", required=True)
16
+ @click.argument("module_path", required=False, default=".")
17
+ def _new_module(module_name: str, module_path: str = "."):
18
+ new_module(module_name, module_path)
19
+
20
+
21
+ def new_module(module_name: str, module_path: str = ".", quiet: bool = False):
22
+ module_name = sanitize_module_name(module_name)
23
+
24
+ if module_path == ".":
25
+ module_path = os.path.join(os.getcwd(), module_name)
26
+ else:
27
+ module_path = os.path.join(module_path, module_name)
28
+
29
+ if not os.path.exists(module_path):
30
+ os.makedirs(module_path, exist_ok=True)
31
+ elif len(os.listdir(module_path)) > 0:
32
+ print(f"Folder {module_path} already exists and is not empty.")
33
+ exit(1)
34
+
35
+ copier = Copier(
36
+ templates_path=os.path.join(
37
+ os.path.dirname(naas_abi_cli.__file__), "cli/new/templates/module"
38
+ ),
39
+ destination_path=module_path,
40
+ )
41
+
42
+ copier.copy(
43
+ values={
44
+ "module_name": module_name,
45
+ "module_name_snake": module_name.replace("-", "_"),
46
+ "module_name_pascal": module_name.replace("-", "").capitalize(),
47
+ }
48
+ )
49
+
50
+ if not quiet:
51
+ print(f"\nModule '{module_name}' has been created at:\n {module_path}\n")
52
+ print("To enable this module, add the following to your config.yaml:\n")
53
+ print("modules:")
54
+ print(f" - path: {module_path}")
55
+ print(" enabled: true\n")
@@ -5,6 +5,7 @@ import click
5
5
  import naas_abi_cli
6
6
  from naas_abi_cli.cli.utils.Copier import Copier
7
7
 
8
+ from .module import new_module
8
9
  from .new import new
9
10
 
10
11
 
@@ -44,6 +45,9 @@ def new_project(project_name: str | None, project_path: str | None):
44
45
  }
45
46
  )
46
47
 
48
+ # Calling new_module to create the module in the src folder
49
+ new_module(project_name, os.path.join(project_path, "src"), quiet=True)
50
+
47
51
  # Run dependency install without shell to avoid quoting issues on paths with spaces.
48
52
  subprocess.run(
49
53
  [
@@ -6,10 +6,10 @@ from naas_abi_core.services.agent.Agent import (
6
6
  AgentSharedState,
7
7
  )
8
8
 
9
- NAME = "{{project_name_snake}} Agent"
9
+ NAME = "{{module_name_snake}} Agent"
10
10
  DESCRIPTION = "An helpful agent that can help you with your tasks."
11
11
  SYSTEM_PROMPT = """
12
- You are {{project_name_snake}} Agent.
12
+ You are {{module_name_snake}} Agent.
13
13
  """
14
14
 
15
15
 
@@ -17,7 +17,7 @@ def create_agent(
17
17
  agent_shared_state: Optional[AgentSharedState] = None,
18
18
  agent_configuration: Optional[AgentConfiguration] = None,
19
19
  ) -> Optional[Agent]:
20
- #from {{project_name_snake}} import ABIModule
20
+ #from {{module_name_snake}} import ABIModule
21
21
 
22
22
  # Set model
23
23
  from naas_abi_marketplace.ai.chatgpt.models.gpt_5 import model as chatgpt_model
@@ -36,7 +36,7 @@ def create_agent(
36
36
 
37
37
  agents: list = []
38
38
 
39
- return {{project_name_pascal}}Agent(
39
+ return {{module_name_pascal}}Agent(
40
40
  name=NAME,
41
41
  description=DESCRIPTION,
42
42
  chat_model=model,
@@ -48,5 +48,5 @@ def create_agent(
48
48
  )
49
49
 
50
50
 
51
- class {{project_name_pascal}}Agent(Agent):
51
+ class {{module_name_pascal}}Agent(Agent):
52
52
  pass
@@ -7,6 +7,13 @@ requires-python = ">=3.12"
7
7
  dependencies = [
8
8
  ]
9
9
 
10
+ [build-system]
11
+ requires = ["setuptools"]
12
+ build-backend = "setuptools.build_meta"
13
+
14
+ [tool.setuptools.packages.find]
15
+ where = ["src"]
16
+
10
17
 
11
18
  # [tool.uv.sources]
12
19
  # naas-abi = { path = ".abi/libs/naas-abi", editable = true }
@@ -1,6 +1,6 @@
1
1
  [project]
2
2
  name = "naas-abi-cli"
3
- version = "1.6.1"
3
+ version = "1.8.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,10 +0,0 @@
1
- import click
2
-
3
- from .new import new
4
-
5
-
6
- @new.command("module")
7
- @click.argument("module-name")
8
- @click.argument("module-path")
9
- def new_module(module_name: str, module_path: str):
10
- pass
File without changes
File without changes
File without changes