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.2.tar.gz (217.4 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.2-py3-none-any.whl (308.7 kB view details)

Uploaded Python 3

File details

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

File metadata

  • Download URL: ara_cli-0.1.13.2.tar.gz
  • Upload date:
  • Size: 217.4 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.2.tar.gz
Algorithm Hash digest
SHA256 a0d668cbf9ae1799135d126619debd0b90036bf65dde6a24b5544093fe09c402
MD5 afd9959cfa839a4a61d67caa87de4001
BLAKE2b-256 595963cc806f4dd66c5c01ee3461f59ccc4be2a1b3b64e4535019031dcfbbde3

See more details on using hashes here.

File details

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

File metadata

  • Download URL: ara_cli-0.1.13.2-py3-none-any.whl
  • Upload date:
  • Size: 308.7 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.2-py3-none-any.whl
Algorithm Hash digest
SHA256 c061d93f2f6c30af665eeb4119423546376955e958790a1da5ea3ba6c2d7d19b
MD5 650ce14d7af769c91b524b0e3e21afcf
BLAKE2b-256 a2a3be67cf044e43bab4ac2088091c8207f6754ca568b88e04922f9b0c2e006e

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