Skip to main content

AI-ready workflow contract for software projects.

Project description

Fluxy

Fluxy is an AI-ready workflow contract for software projects.

It gives humans, CI, and AI coding agents one clear place to understand how a project should be run, tested, validated, and shipped.

pip install fluxy
fluxy init
fluxy doctor
fluxy run check

What is Fluxy?

Fluxy is a small CLI built around fluxy.yml.

That file describes the commands a project supports:

  • local development workflows
  • lint, test, check, and build commands
  • required environment variables
  • protected release and deploy tasks
  • list safe workflows for humans and AI agents

Cursor writes code. Fluxy tells it how to run, test, and ship safely.

Installation

pip install fluxy

For isolated CLI installation:

pipx install fluxy

Quick start

Create a workflow file:

fluxy init

Inspect the project:

fluxy doctor

List available workflows:

fluxy list

Run a workflow:

fluxy run check

Core commands

fluxy init
fluxy list
fluxy run <task>
fluxy run <task> --agent
fluxy env check
fluxy env check --task release
fluxy doctor
fluxy --version

Python API

Fluxy also exposes a small Python API for tools that want to inspect the same workflow contract:

from fluxy import check_environment, list_tasks, load_workflow, run

workflow = load_workflow("fluxy.yml")

print(list_tasks(workflow, agent_safe=True))
print(check_environment(workflow))

run(workflow, "check", agent=True)

Example workflow

project: my-python-package

tasks:
  lint:
    description: Run static checks.
    agent_safe: true
    cmd: ruff check .

  test:
    description: Run the test suite.
    agent_safe: true
    cmd: pytest

  check:
    description: Run all local validation before a pull request.
    agent_safe: true
    steps:
      - task: lint
      - task: test

  build:
    description: Build distribution files.
    agent_safe: true
    cmd: python -m build

  release:
    description: Upload the package after human review.
    protected: true
    agent_safe: false
    env:
      - name: PYPI_API_TOKEN
        description: Required only for release.
        secret: true
    steps:
      - task: check
      - task: build
      - run: python -m twine upload dist/*

Protected tasks require human confirmation:

fluxy run release

Non-interactive environments can use --yes only after an explicit human decision:

fluxy run release --yes

AI agents

AI agents can inspect and run only the tasks marked as safe:

fluxy list --agent-safe
fluxy run check --agent

If a task is not marked agent_safe: true, Fluxy refuses to run it in agent mode. Protected tasks such as release and deploy are blocked.

Fluxy does not include telemetry. It does not send project names, paths, command strings, environment variables, repository URLs, or usage events anywhere.

License

Fluxy is released under the MIT License.

Author

Created by Jasurbek Kamilov.

Maintained as the Fluxy open-source project.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

fluxy-0.4.1.tar.gz (13.1 kB view details)

Uploaded Source

Built Distribution

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

fluxy-0.4.1-py3-none-any.whl (13.0 kB view details)

Uploaded Python 3

File details

Details for the file fluxy-0.4.1.tar.gz.

File metadata

  • Download URL: fluxy-0.4.1.tar.gz
  • Upload date:
  • Size: 13.1 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for fluxy-0.4.1.tar.gz
Algorithm Hash digest
SHA256 7d0b6925043c6d401e43410b7d9f542424c850311098d5094b6f61b9e64aa069
MD5 df3d46d36eb311e57b411f8c40987f0c
BLAKE2b-256 f587332e1daec54051727356fc610dd69bfef204af9694612fcd246925cf26c1

See more details on using hashes here.

File details

Details for the file fluxy-0.4.1-py3-none-any.whl.

File metadata

  • Download URL: fluxy-0.4.1-py3-none-any.whl
  • Upload date:
  • Size: 13.0 kB
  • Tags: Python 3
  • Uploaded using Trusted Publishing? No
  • Uploaded via: twine/6.2.0 CPython/3.12.7

File hashes

Hashes for fluxy-0.4.1-py3-none-any.whl
Algorithm Hash digest
SHA256 3e6e3eb453e0969fab1e160abe0ea07ddc78a88bb442c7c5879d52171b726897
MD5 5176ec9a24abd8458701288b4b3c07e6
BLAKE2b-256 b7584b54e4b302868e1bbf6e0c6a88147372e5e0d74778a6a378502d7f5e993a

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