Metadata-Version: 2.4
Name: rpa-cli
Version: 0.1.5
Summary: Proof-of-concept CLI tool for parsing UiPath projects into structured JSON artifacts
Project-URL: Homepage, https://github.com/rpapub/rpax
Project-URL: Repository, https://github.com/rpapub/rpax
Project-URL: Issues, https://github.com/rpapub/rpax/issues
Project-URL: Documentation, https://rpapub.dev/rpax
Author-email: Christian Prior-Mamulyan <cprior@gmail.com>
License: # Creative Commons Attribution 4.0 International License (CC-BY)
        
        ---
        
        ## You are free to:
        
        - **Share** — copy and redistribute the material in any medium or format
        - **Adapt** — remix, transform, and build upon the material for any purpose, even commercially.
        
        The licensor cannot revoke these freedoms as long as you follow the license terms.
        
        ## Under the following terms:
        
        - **Attribution** — You must give appropriate credit, provide a link to the license, and indicate if changes were made. You may do so in any reasonable manner, but not in any way that suggests the licensor endorses you or your use.
        - **No additional restrictions** — You may not apply legal terms or technological measures that legally restrict others from doing anything the license permits.
        
        ## Notices:
        
        - You do not have to comply with the license for elements of the material in the public domain or where your use is permitted by an applicable exception or limitation.
        - No warranties are given. The license may not give you all of the permissions necessary for your intended use. For example, other rights such as publicity, privacy, or moral rights may limit how you use the material.
        
        For the full license text, please visit:
        [https://creativecommons.org/licenses/by/4.0/legalcode](https://creativecommons.org/licenses/by/4.0/legalcode)
License-File: AUTHORS.md
License-File: LICENSE
Keywords: analysis,automation,ci,cli,documentation,parsing,rpa,uipath
Classifier: Development Status :: 3 - Alpha
Classifier: Environment :: Console
Classifier: Intended Audience :: Developers
Classifier: License :: Other/Proprietary License
Classifier: Operating System :: OS Independent
Classifier: Programming Language :: Python :: 3
Classifier: Programming Language :: Python :: 3.11
Classifier: Programming Language :: Python :: 3.12
Classifier: Topic :: Software Development :: Libraries :: Python Modules
Classifier: Topic :: System :: Systems Administration
Classifier: Topic :: Utilities
Requires-Python: >=3.11
Requires-Dist: cpmf-uips-or>=0.1.2
Requires-Dist: cpmf-uips-xaml<0.2,>=0.1.5
Requires-Dist: defusedxml<1.0.0,>=0.7.1
Requires-Dist: jsonschema<5.0.0,>=4.17.0
Requires-Dist: psutil<6.0.0,>=5.9.0
Requires-Dist: pydantic[email]<3.0.0,>=2.0.0
Requires-Dist: python-slugify>=8.0.4
Requires-Dist: pyyaml>=6.0.2
Requires-Dist: rich<14.0.0,>=13.0.0
Requires-Dist: typer<1.0.0,>=0.9.0
Provides-Extra: api
Requires-Dist: fastapi<1.0.0,>=0.104.0; extra == 'api'
Requires-Dist: uvicorn[standard]<1.0.0,>=0.24.0; extra == 'api'
Provides-Extra: mcp
Requires-Dist: mcp<2.0.0,>=1.0.0; extra == 'mcp'
Description-Content-Type: text/markdown

# rpax

CLI tool for parsing UiPath projects into call graphs, dependency maps,
and structured JSON artifacts for documentation, validation, and CI impact analysis.

> **Alpha** — distributed via [test PyPI](https://test.pypi.org/project/rpa-cli/).
> Expect breaking changes between versions.

## Install

Requires Python 3.11+ and [uv](https://docs.astral.sh/uv/).

```bash
uvx --from rpa-cli \
    --index-url https://test.pypi.org/simple/ \
    --extra-index-url https://pypi.org/simple/ \
    --index-strategy unsafe-best-match \
    rpa-cli --help
```

## Quick start

```bash
# Parse a project — artifacts land in .rpax-warehouse/ relative to CWD
rpa-cli parse /path/to/uipath/project

# Inspect a specific workflow
rpa-cli explain MyWorkflow.xaml

# Bump the project version
rpa-cli bump patch
```

## Commands

| Command | Status | Description |
|---------|--------|-------------|
| `parse [PATH]` | experimental | Parse UiPath project(s); generate artifacts into `.rpax-warehouse/` |
| `explain <workflow>` | experimental | Arguments, callees, callers for one workflow |
| `bump {major\|minor\|patch}` | stable | Bump `projectVersion` in `project.json` |

Run `rpa-cli <command> --help` for full options.

### Bump without installing

Run `bump` directly from the project directory without a permanent install:

```bash
uvx --from rpa-cli \
    --index-url https://test.pypi.org/simple/ \
    --extra-index-url https://pypi.org/simple/ \
    --index-strategy unsafe-best-match \
    rpa-cli bump patch
```

## Output artifacts

`parse` writes per-project artifacts under `.rpax-warehouse/<bay-id>/`:

| File | Contents |
|------|----------|
| `manifest.json` | Project metadata and entry points |
| `workflows.index.json` | All discovered XAML workflows |
| `invocations.jsonl` | Call graph edges (caller → callee) |
| `call-graph.json` | Resolved dependency graph with metrics |
| `metrics/` | Per-workflow activity metrics |
| `activities.tree/` | Per-workflow activity trees |
| `pseudocode/` | Human-readable activity summaries |

## License

[CC-BY 4.0](LICENSE)
