ara-cli 0.1.9.77__py3-none-any.whl → 0.1.9.79__py3-none-any.whl
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.
- ara_cli/prompt_handler.py +3 -2
- ara_cli/version.py +1 -1
- ara_cli-0.1.9.79.dist-info/METADATA +208 -0
- {ara_cli-0.1.9.77.dist-info → ara_cli-0.1.9.79.dist-info}/RECORD +7 -7
- ara_cli-0.1.9.77.dist-info/METADATA +0 -18
- {ara_cli-0.1.9.77.dist-info → ara_cli-0.1.9.79.dist-info}/WHEEL +0 -0
- {ara_cli-0.1.9.77.dist-info → ara_cli-0.1.9.79.dist-info}/entry_points.txt +0 -0
- {ara_cli-0.1.9.77.dist-info → ara_cli-0.1.9.79.dist-info}/top_level.txt +0 -0
ara_cli/prompt_handler.py
CHANGED
|
@@ -25,9 +25,10 @@ class LLMSingleton:
|
|
|
25
25
|
|
|
26
26
|
if not selected_config:
|
|
27
27
|
raise ValueError(f"No configuration found for the model: {model_id}")
|
|
28
|
-
|
|
28
|
+
if not isinstance(selected_config, LLMConfigItem):
|
|
29
|
+
selected_config = LLMConfigItem(**selected_config)
|
|
29
30
|
LLMSingleton._model = model_id
|
|
30
|
-
|
|
31
|
+
|
|
31
32
|
# Typesafe for None values inside the config.
|
|
32
33
|
self.config_parameters = selected_config.model_dump(exclude_none=True)
|
|
33
34
|
|
ara_cli/version.py
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
1
|
# version.py
|
|
2
|
-
__version__ = "0.1.9.
|
|
2
|
+
__version__ = "0.1.9.79" # fith parameter like .0 for local install test purposes only. official numbers should be 4 digit numbers
|
|
@@ -0,0 +1,208 @@
|
|
|
1
|
+
Metadata-Version: 2.4
|
|
2
|
+
Name: ara_cli
|
|
3
|
+
Version: 0.1.9.79
|
|
4
|
+
Summary: Powerful, open source command-line tool for managing, structuring and automating software development artifacts in line with Business-Driven Development (BDD) and AI-assisted processes
|
|
5
|
+
Description-Content-Type: text/markdown
|
|
6
|
+
Requires-Dist: litellm
|
|
7
|
+
Requires-Dist: llama-index
|
|
8
|
+
Requires-Dist: llama-index-llms-openai
|
|
9
|
+
Requires-Dist: llama-index-retrievers-bm25
|
|
10
|
+
Requires-Dist: openai
|
|
11
|
+
Requires-Dist: markdown-it-py
|
|
12
|
+
Requires-Dist: json-repair
|
|
13
|
+
Requires-Dist: argparse
|
|
14
|
+
Requires-Dist: argcomplete
|
|
15
|
+
Requires-Dist: cmd2>=2.5
|
|
16
|
+
Requires-Dist: pydantic
|
|
17
|
+
Requires-Dist: pydantic_ai
|
|
18
|
+
Requires-Dist: python-docx
|
|
19
|
+
Requires-Dist: pymupdf4llm
|
|
20
|
+
Dynamic: description
|
|
21
|
+
Dynamic: description-content-type
|
|
22
|
+
Dynamic: requires-dist
|
|
23
|
+
Dynamic: summary
|
|
24
|
+
|
|
25
|
+
# ara-cli
|
|
26
|
+
|
|
27
|
+
**ara-cli** is a powerful, open source command-line tool for managing, structuring and automating software development artifacts in line with Behavior-Driven Development (BDD) and AI-assisted processes. With an intuitive interface and platform-independent implementation in Python, ara-cli enables teams to structure business goals, capabilities, features, user stories, and tasks, and to leverage integrated AI/chat capabilities for requirements engineering, documentation, and process automation.
|
|
28
|
+
|
|
29
|
+
---
|
|
30
|
+
|
|
31
|
+
## Features
|
|
32
|
+
|
|
33
|
+
- **Comprehensive Artefact Management:**
|
|
34
|
+
Create, edit, rename, delete, and list all core artefacts of the software development lifecycle: businessgoals, vision, capabilities, keyfeatures, features, epics, userstories, examples, and tasks.
|
|
35
|
+
|
|
36
|
+
- **Structured Traceability:**
|
|
37
|
+
Organize and link artefacts for full traceability from business goals to implementation tasks. Effortlessly navigate artefact hierarchies and dependencies.
|
|
38
|
+
|
|
39
|
+
- **Integrated AI and Chat:**
|
|
40
|
+
Interact with AI language models directly from your terminal. Use chat and prompt commands to assist with documentation, requirements refinement, and artefact management.
|
|
41
|
+
|
|
42
|
+
- **Prompt Templates:**
|
|
43
|
+
Fetch, use, and manage reusable prompt templates for consistent and efficient requirements and documentation workflows.
|
|
44
|
+
|
|
45
|
+
- **Artefact Status and User Management:**
|
|
46
|
+
Assign and query status and responsible users for artefacts to support project coordination and tracking.
|
|
47
|
+
|
|
48
|
+
- **Automated Quality Assurance:**
|
|
49
|
+
Scan artefact trees for inconsistencies and automatically correct issues using integrated LLM-powered autofix functionality.
|
|
50
|
+
|
|
51
|
+
- **Powerful Listing and Search:**
|
|
52
|
+
List artefacts and filter by type, tags, content, contributor relationships, file extensions, and more.
|
|
53
|
+
|
|
54
|
+
- **Open Source & Platform Independent:**
|
|
55
|
+
Implemented in Python and available on PyPI for easy installation and integration into any workflow.
|
|
56
|
+
|
|
57
|
+
---
|
|
58
|
+
|
|
59
|
+
## Use Cases
|
|
60
|
+
|
|
61
|
+
- **Requirements Engineering:**
|
|
62
|
+
Capture and structure business requirements and user stories with clear traceability.
|
|
63
|
+
|
|
64
|
+
- **Agile Development:**
|
|
65
|
+
Manage and automate backlog refinement, sprint planning, and task tracking.
|
|
66
|
+
|
|
67
|
+
- **AI-Enhanced Productivity:**
|
|
68
|
+
Use chat and prompt features to accelerate documentation, code review, and knowledge management.
|
|
69
|
+
|
|
70
|
+
- **Quality Management:**
|
|
71
|
+
Ensure artefact consistency and high documentation quality via automated scans and fixes.
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## Quick Start
|
|
76
|
+
|
|
77
|
+
Install from PyPI:
|
|
78
|
+
```bash
|
|
79
|
+
pip install ara-cli
|
|
80
|
+
````
|
|
81
|
+
|
|
82
|
+
Create your first feature artefact:
|
|
83
|
+
|
|
84
|
+
```bash
|
|
85
|
+
ara create feature login
|
|
86
|
+
```
|
|
87
|
+
|
|
88
|
+
List all features:
|
|
89
|
+
|
|
90
|
+
```bash
|
|
91
|
+
ara list --include-extension .feature
|
|
92
|
+
```
|
|
93
|
+
|
|
94
|
+
Chat with the integrated AI:
|
|
95
|
+
|
|
96
|
+
```bash
|
|
97
|
+
ara chat
|
|
98
|
+
```
|
|
99
|
+
|
|
100
|
+
Scan and autofix artefacts:
|
|
101
|
+
|
|
102
|
+
```bash
|
|
103
|
+
ara scan
|
|
104
|
+
ara autofix
|
|
105
|
+
```
|
|
106
|
+
|
|
107
|
+
---
|
|
108
|
+
|
|
109
|
+
## Command Overview
|
|
110
|
+
|
|
111
|
+
| Action | Description |
|
|
112
|
+
|--------------------|-----------------------------------------------------------------------------|
|
|
113
|
+
| create | Create a classified artefact with data directory |
|
|
114
|
+
| delete | Delete an artefact and its data directory |
|
|
115
|
+
| rename | Rename an artefact and its data directory |
|
|
116
|
+
| list, list-tags | List artefacts, show tags, filter by content, extension, hierarchy etc. |
|
|
117
|
+
| prompt, chat | Use AI-powered chat and prompt templates for artefact management |
|
|
118
|
+
| template | Print artefact templates in the terminal |
|
|
119
|
+
| fetch-templates | Download and manage reusable prompt templates |
|
|
120
|
+
| read | Output artefact contents and their full contribution chain |
|
|
121
|
+
| reconnect | Connect artefacts to parent artefacts |
|
|
122
|
+
| read-status, set-status | Query and assign status to artefacts |
|
|
123
|
+
| read-user, set-user | Query and assign responsible users |
|
|
124
|
+
| classifier-directory | Show directory of artefact classifiers |
|
|
125
|
+
| scan | Scan the ARA tree for incompatible or inconsistent artefacts |
|
|
126
|
+
| autofix | Automatically correct artefact issues with LLM assistance |
|
|
127
|
+
|
|
128
|
+
See `ara -h` for the complete list of commands and usage examples.
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## Artefact Structure
|
|
133
|
+
|
|
134
|
+
ara-cli organizes your project artefacts in a clear directory structure:
|
|
135
|
+
|
|
136
|
+
```
|
|
137
|
+
./ara/
|
|
138
|
+
├── businessgoals/
|
|
139
|
+
├── vision/
|
|
140
|
+
├── capabilities/
|
|
141
|
+
├── keyfeatures/
|
|
142
|
+
├── features/
|
|
143
|
+
├── epics/
|
|
144
|
+
├── userstories/
|
|
145
|
+
├── examples/
|
|
146
|
+
├── tasks/
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
---
|
|
150
|
+
|
|
151
|
+
## Example Workflows
|
|
152
|
+
|
|
153
|
+
- **Create a new feature and link it to a user story:**
|
|
154
|
+
|
|
155
|
+
```bash
|
|
156
|
+
ara create feature payment contributes-to userstory checkout
|
|
157
|
+
```
|
|
158
|
+
|
|
159
|
+
- **Read an artefact's content and its full parent chain:**
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
ara read task implement_api --branch
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
- **List tasks containing specific content:**
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
ara list --include-extension .task --include-content "API integration"
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
- **Automate prompt-based LLM interaction for a task:**
|
|
172
|
+
|
|
173
|
+
```bash
|
|
174
|
+
ara prompt send task implement_api
|
|
175
|
+
ara prompt extract task implement_api
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
---
|
|
179
|
+
|
|
180
|
+
## Requirements
|
|
181
|
+
|
|
182
|
+
- Python 3.8+
|
|
183
|
+
- Platform-independent; tested on Linux, macOS, and Windows
|
|
184
|
+
|
|
185
|
+
---
|
|
186
|
+
|
|
187
|
+
## License
|
|
188
|
+
|
|
189
|
+
This project is open source and freely available under the [MIT License](vector://vector/webapp/LICENSE).
|
|
190
|
+
|
|
191
|
+
---
|
|
192
|
+
|
|
193
|
+
## Links
|
|
194
|
+
|
|
195
|
+
- **PyPI:** https://pypi.org/project/ara-cli/
|
|
196
|
+
- **Source code:** \[GitHub link or repository URL\]
|
|
197
|
+
- **Documentation:** \[Link if available\]
|
|
198
|
+
|
|
199
|
+
---
|
|
200
|
+
|
|
201
|
+
## Contributing
|
|
202
|
+
|
|
203
|
+
Contributions, issues, and feature requests are welcome! Please open an issue or submit a pull request via GitHub.
|
|
204
|
+
|
|
205
|
+
---
|
|
206
|
+
|
|
207
|
+
**ara-cli — Structure your development. Automate with AI. Build better software.**
|
|
208
|
+
|
|
@@ -25,13 +25,13 @@ ara_cli/list_filter.py,sha256=qKGwwQsrWe7L5FbdxEbBYD1bbbi8c-RMypjXqXvLbgs,5291
|
|
|
25
25
|
ara_cli/output_suppressor.py,sha256=nwiHaQLwabOjMoJOeUESBnZszGMxrQZfJ3N2OvahX7Y,389
|
|
26
26
|
ara_cli/prompt_chat.py,sha256=kd_OINDQFit6jN04bb7mzgY259JBbRaTaNp9F-webkc,1346
|
|
27
27
|
ara_cli/prompt_extractor.py,sha256=6l1Or7wuFNUDqbMg-NDXpFX-WMi2XV7YGH6hGDvow2o,7557
|
|
28
|
-
ara_cli/prompt_handler.py,sha256=
|
|
28
|
+
ara_cli/prompt_handler.py,sha256=RN409FCUC1VYvML33mcSIvfofEFrHh9iu3W-RY5ti2k,18689
|
|
29
29
|
ara_cli/prompt_rag.py,sha256=ydlhe4CUqz0jdzlY7jBbpKaf_5fjMrAZKnriKea3ZAg,7485
|
|
30
30
|
ara_cli/run_file_lister.py,sha256=XbrrDTJXp1LFGx9Lv91SNsEHZPP-PyEMBF_P4btjbDA,2360
|
|
31
31
|
ara_cli/tag_extractor.py,sha256=TGdaQOVnjy25R0zDsAifB67C5oom0Fwo24s0_fr5A_I,3151
|
|
32
32
|
ara_cli/template_manager.py,sha256=YwrN6AYPpl6ZrW8BVQpVXx8yTRf-oNpJUIKeg4NAggs,6606
|
|
33
33
|
ara_cli/update_config_prompt.py,sha256=Oy9vNTw6UhDohyTEfSKkqE5ifEMPlmWNYkKHgUrK_pY,4607
|
|
34
|
-
ara_cli/version.py,sha256=
|
|
34
|
+
ara_cli/version.py,sha256=zdXFVKnlMG8MON6nBwIEaQGfof-CSsHg_QUZgvxglrg,146
|
|
35
35
|
ara_cli/artefact_models/__init__.py,sha256=47DEQpj8HBSa-_TImW-5JCeuQeRkm5NMpJWZG3hSuFU,0
|
|
36
36
|
ara_cli/artefact_models/artefact_load.py,sha256=IXzWxP-Q_j_oDGMno0m-OuXCQ7Vd5c_NctshGr4ROBw,621
|
|
37
37
|
ara_cli/artefact_models/artefact_mapping.py,sha256=8aD0spBjkJ8toMAmFawc6UTUxB6-tEEViZXv2I-r88Q,1874
|
|
@@ -141,8 +141,8 @@ tests/test_list_filter.py,sha256=fJA3d_SdaOAUkE7jn68MOVS0THXGghy1fye_64Zvo1U,796
|
|
|
141
141
|
tests/test_tag_extractor.py,sha256=nSiAYlTKZ7TLAOtcJpwK5zTWHhFYU0tI5xKnivLc1dU,2712
|
|
142
142
|
tests/test_template_manager.py,sha256=q-LMHRG4rHkD6ON6YW4cpZxUx9hul6Or8wVVRC2kb-8,4099
|
|
143
143
|
tests/test_update_config_prompt.py,sha256=xsqj1WTn4BsG5Q2t-sNPfu7EoMURFcS-hfb5VSXUnJc,6765
|
|
144
|
-
ara_cli-0.1.9.
|
|
145
|
-
ara_cli-0.1.9.
|
|
146
|
-
ara_cli-0.1.9.
|
|
147
|
-
ara_cli-0.1.9.
|
|
148
|
-
ara_cli-0.1.9.
|
|
144
|
+
ara_cli-0.1.9.79.dist-info/METADATA,sha256=oYAs-Iw1JNmtk372QFveEt5IBlC5b-tATFRMqQLPxYw,6739
|
|
145
|
+
ara_cli-0.1.9.79.dist-info/WHEEL,sha256=_zCd3N1l69ArxyTb8rzEoP9TpbYXkqRFSNOD5OuxnTs,91
|
|
146
|
+
ara_cli-0.1.9.79.dist-info/entry_points.txt,sha256=v4h7MzysTgSIDYfEo3oj4Kz_8lzsRa3hq-KJHEcLVX8,45
|
|
147
|
+
ara_cli-0.1.9.79.dist-info/top_level.txt,sha256=WM4cLHT5DYUaWzLtRj-gu3yVNFpGQ6lLRI3FMmC-38I,14
|
|
148
|
+
ara_cli-0.1.9.79.dist-info/RECORD,,
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
Metadata-Version: 2.4
|
|
2
|
-
Name: ara_cli
|
|
3
|
-
Version: 0.1.9.77
|
|
4
|
-
Requires-Dist: litellm
|
|
5
|
-
Requires-Dist: llama-index
|
|
6
|
-
Requires-Dist: llama-index-llms-openai
|
|
7
|
-
Requires-Dist: llama-index-retrievers-bm25
|
|
8
|
-
Requires-Dist: openai
|
|
9
|
-
Requires-Dist: markdown-it-py
|
|
10
|
-
Requires-Dist: json-repair
|
|
11
|
-
Requires-Dist: argparse
|
|
12
|
-
Requires-Dist: argcomplete
|
|
13
|
-
Requires-Dist: cmd2>=2.5
|
|
14
|
-
Requires-Dist: pydantic
|
|
15
|
-
Requires-Dist: pydantic_ai
|
|
16
|
-
Requires-Dist: python-docx
|
|
17
|
-
Requires-Dist: pymupdf4llm
|
|
18
|
-
Dynamic: requires-dist
|
|
File without changes
|
|
File without changes
|
|
File without changes
|