Skip to main content

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

Project description

ara-cli

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.


Features

  • Comprehensive Artefact Management:
    Create, edit, rename, delete, and list all core artefacts of the software development lifecycle: businessgoals, vision, capabilities, keyfeatures, features, epics, userstories, examples, and tasks.

  • Structured Traceability:
    Organize and link artefacts for full traceability from business goals to implementation tasks. Effortlessly navigate artefact hierarchies and dependencies.

  • Integrated AI and Chat:
    Interact with AI language models directly from your terminal. Use chat and prompt commands to assist with documentation, requirements refinement, and artefact management.

  • Prompt Templates:
    Fetch, use, and manage reusable prompt templates for consistent and efficient requirements and documentation workflows.

  • Artefact Status and User Management:
    Assign and query status and responsible users for artefacts to support project coordination and tracking.

  • Automated Quality Assurance:
    Scan artefact trees for inconsistencies and automatically correct issues using integrated LLM-powered autofix functionality.

  • Powerful Listing and Search:
    List artefacts and filter by type, tags, content, contributor relationships, file extensions, and more.

  • Open Source & Platform Independent:
    Implemented in Python and available on PyPI for easy installation and integration into any workflow.


Use Cases

  • Requirements Engineering:
    Capture and structure business requirements and user stories with clear traceability.

  • Agile Development:
    Manage and automate backlog refinement, sprint planning, and task tracking.

  • AI-Enhanced Productivity:
    Use chat and prompt features to accelerate documentation, code review, and knowledge management.

  • Quality Management:
    Ensure artefact consistency and high documentation quality via automated scans and fixes.


Quick Start

Install from PyPI:

pip install ara-cli

Create your first feature artefact:

ara create feature login

List all features:

ara list --include-extension .feature

Chat with the integrated AI:

ara chat

Scan and autofix artefacts:

ara scan
ara autofix

Command Overview

Action Description
create Create a classified artefact with data directory
delete Delete an artefact and its data directory
rename Rename an artefact and its data directory
list, list-tags List artefacts, show tags, filter by content, extension, hierarchy etc.
prompt, chat Use AI-powered chat and prompt templates for artefact management
template Print artefact templates in the terminal
fetch-templates Download and manage reusable prompt templates
read Output artefact contents and their full contribution chain
reconnect Connect artefacts to parent artefacts
read-status, set-status Query and assign status to artefacts
read-user, set-user Query and assign responsible users
classifier-directory Show directory of artefact classifiers
scan Scan the ARA tree for incompatible or inconsistent artefacts
autofix Automatically correct artefact issues with LLM assistance

See ara -h for the complete list of commands and usage examples.


Agent Commands

ara-cli includes powerful agent-based capabilities that can be accessed through the interactive chat. These agents can perform complex, multi-step tasks, such as conducting interviews or automating coding workflows.

To use the agent commands, first start an interactive chat session:

ara prompt chat <artefact_classifier> <artefact_name>

Once inside the chat, you can use the following commands to manage agents:

Command Shortcut Description
AGENT_RUN a Run an agent by name.
AGENT_STOP as Stop the currently running agent.
AGENT_CONTINUE ac Continue the agent's operation without new input.
AGENT_STATUS astat Show the status of the current agent.
exit Exit from agent interfacto back to chat.

Example:

ara> a interview_agent

Important: The agent functionality requires the ara-agents package to be installed separately. If you do not have ara-agents installed, please contact the Talsen Team for assistance.


Artefact Structure

ara-cli organizes your project artefacts in a clear directory structure:

./ara/
   ├── businessgoals/
   ├── vision/
   ├── capabilities/
   ├── keyfeatures/
   ├── features/
   ├── epics/
   ├── userstories/
   ├── examples/
   ├── tasks/

Example Workflows

  • Create a new feature and link it to a user story:
ara create feature payment contributes-to userstory checkout
  • Read an artefact's content and its full parent chain:
ara read task implement_api --branch
  • List tasks containing specific content:
ara list --include-extension .task --include-content "API integration"
  • Automate prompt-based LLM interaction for a task:
ara prompt send task implement_api
ara prompt extract task implement_api

Requirements

  • Python 3.8+
  • Platform-independent; tested on Linux, macOS, and Windows

License

This project is open source and freely available under the MIT License.


Links


Contributing

Contributions, issues, and feature requests are welcome! Please open an issue or submit a pull request via GitHub.


ara-cli — Structure your development. Automate with AI. Build better software.

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

ara_cli-0.1.13.0.tar.gz (216.6 kB view details)

Uploaded Source

Built Distribution

If you're not sure about the file name format, learn more about wheel file names.

ara_cli-0.1.13.0-py3-none-any.whl (307.8 kB view details)

Uploaded Python 3

File details

Details for the file ara_cli-0.1.13.0.tar.gz.

File metadata

  • Download URL: ara_cli-0.1.13.0.tar.gz
  • Upload date:
  • Size: 216.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for ara_cli-0.1.13.0.tar.gz
Algorithm Hash digest
SHA256 4b4853ec1a1ac58b7a8483f6d88f8166a0c4c3280038637a393753ef6f0efdd0
MD5 b6662ca6f89e100e8c52208f63c3fe99
BLAKE2b-256 bf517b0d5699270fcf2bac81b258e2815fa2c15e07a5f7b507465427bf9042ce

See more details on using hashes here.

File details

Details for the file ara_cli-0.1.13.0-py3-none-any.whl.

File metadata

  • Download URL: ara_cli-0.1.13.0-py3-none-any.whl
  • Upload date:
  • Size: 307.8 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.12

File hashes

Hashes for ara_cli-0.1.13.0-py3-none-any.whl
Algorithm Hash digest
SHA256 967642225247e357dd52d75d8f9c0ed9e230fd0572c477c89ba92e232bb58d8f
MD5 a3182e04010019530c7bc5bfcd64be2c
BLAKE2b-256 068e6eaa75d8a4a7d7ca4d74a168880960337b7bdd366087e24f90c73208182c

See more details on using hashes here.

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Pingdom Monitoring Sentry Error logging StatusPage Status page