semvec/pypi-packages huggingface dataset:
agentix-core 1.0.1
Core module for the Agentix platform
Requires Python: >=3.8

# agentix-core

**Core business logic for the Agentix platform by FIDOX.**

This Python package provides core task handling utilities for AI agent workflows that integrate with the Agentix Core API (`v1`). It includes task lifecycle management, system event logging, secure credential storage via Agentix Vault, and usage reporting tools used across multiple voice or automation agents.

---

## 🚀 Installation

Install via pip:

```bash
pip install agentix-core
heavyedge 1.8.0
Central package for heavy edge coating profile analysis
Requires Python: >=3.10

# HeavyEdge

[![Supported Python Versions](https://img.shields.io/pypi/pyversions/heavyedge.svg)](https://pypi.python.org/pypi/heavyedge/)
[![PyPI Version](https://img.shields.io/pypi/v/heavyedge.svg)](https://pypi.python.org/pypi/heavyedge/)
[![License](https://img.shields.io/github/license/heavyedge/heavyedge)](https://github.com/heavyedge/heavyedge/blob/master/LICENSE)
[![CI](https://github.com/heavyedge/heavyedge/actions/workflows/ci.yml/badge.svg)](https://github.com/heavyedge/heavyedge/actions/workflows/ci.yml)
[![CD](https://github.com/heavyedge/heavyedge/actions/workflows/cd.yml/badge.svg)](https://github.com/heavyedge/heavyedge/actions/workflows/cd.yml)
[![Docs](https://readthedocs.org/projects/heavyedge/badge/?version=latest)](https://heavyedge.readthedocs.io/en/latest/?badge=latest)

![title](https://heavyedge.readthedocs.io/en/latest/_images/plot-header.png)

Basic package for heavy edge coating profile analysis.

Provides:

- Profile preprocessing and averaging.
- File I/O and command line API.

## Installation

```
$ pip install heavyedge
```

## Documentation

The manual can be found online:

> https://heavyedge.readthedocs.io

If you want to build the document yourself, get the source code and install with `[doc]` dependency.
Then, go to `doc` directory and build the document:

```
$ pip install .[doc]
$ cd doc
$ make html
```

Document will be generated in `build/html` directory. Open `index.html` to see the central page.

## Developing

### Installation

For development features, you must install the package by `pip install -e .[dev]`.

### Testing

Run `pytest` command to perform unit test.

When doctest is run, buildable sample data are rebuilt by default.
To disable this, set `HEAVYEDGE_TEST_REBUILD` environment variable to zero.
For example,
```
HEAVYEDGE_TEST_REBUILD=0 pytest
```
bio-grumpy 1.1.3
gumpy re-implemented in Rust
Requires Python: <3.13,>=3.8

# grumpy - Re-implementation of [gumpy](https://github.com/oxfordmmm/gumpy) in Rust for speed
Does not implement the same interface, but rather the same premise. 

Up to 100x faster than `gumpy`

## Install
```
pip install bio-grumpy
```

## Usage
```
import grumpy

# Parse a genbank file
ref = grumpy.Genome("some/path/to/a/genbank/file.gbk")

# Parse a VCF file, respecting filter fails with a MIN_DP of 3 reads to make a call
vcf = grumpy.VCFFile("some/path/to/a/vcf/file.vcf", False, 3)

# Apply the VCF's mutations to the genome
sample = grumpy.mutate(ref, vcf)

# Get the genome level differences
genome_diff = grumpy.GenomeDifference(ref, sample)
for variant in genome_diff.variants:
    print(variant.variant)
# And minor alleles
for variant in genome_diff.minor_variants:
    print(variant.variant)

# Get gene level differences for all genes with mutations
for gene_name in sample.genes_with_mutations:
    print(gene_name)
    gene_diff = grumpy.GeneDifference(
            ref.get_gene(gene_name),
            sample.get_gene(gene_name),
            grumpy.MinorType.COV,
        )
    for mutation in gene_diff.mutations:
        print(mutation.mutation)
    # And minor alleles
    for mutation in gene_diff.minor_mutations:
        print(mutation.mutation)
```

## Threads
By default, VCF parsing will run with the same number of threads as CPU cores. This can give significant speed improvements for complex VCF files

To force single threading (or other number of threads), run `grumpy.thread_setup(<thread count>)`. Note that should be run before **any** other function in this library, and should not be called more than once! Not following this will cause errors!