semvec/pypi-packages huggingface dataset:
chkexmpt 0.2.0
Check for unintentional security exemptions.
Requires Python: >=3.8

# Check Exemptions

Check for unintentional security exemptions vs exceptions buried in code. An exception is meant to be temporary, an exemption is permanent. Some SAST tools do not support the reporting or management of exceptions.

This tool currently supports inline checkov exceptions, and diffs the timestamp when each line was committed to the current date. If the exception timestamp exceeds the defined `allowed_days` the scan will fail.

## Install

Run `pip install chkexmpt` to install `chkexmpt`.

>NOTE: requires python >= 3.8 Tested on 3.8 and 3.12

## Usage

Run `chkexmpt` to search all sub-directories for files containing security exceptions.

## Output

The output with a single failure would look similar to the example below.

```bash
2024-08-09 12:04:37-07:00, abc1234c, Eric Hoffmann
/home/user1/src/eks-cluster/cluster.tf
cluster.tf,2,#checkov:skip=CKV_TF_1:Ensure Terraform module sources use a commit hash
```

To add an `approved_exemption` for that exception, add the last line to the `approved_exemptions` list in the `.chkexmpt.yml` config.

### Configuration

A config file in the current directory or `~/.chkexmpt.yml` can override default values. Supported attributes are listed below.

```yaml
allowed_days: <integer>
directory_path: "/Full/path/to/code/directory"
dryrun: true|false
ignore_paths:
  - "file/paths"
approved_exemptions:
  - "<fileName>,<lineNumber>,<lineComment>"
```

An example `.chkexmpt.yml` could look like

```yaml
allowed_days: 30
directory_path: "/home/user1/src/project-name"
dryrun: true
ignore_paths:
  - ".terraform"
approved_exemptions:
  - "cluster.tf,2,#checkov:skip=CKV_TF_1:Ensure Terraform module sources use a commit hash"
```
hope-agent 0.1.0
Advanced AI agent orchestration system
Requires Python: >=3.7

# HOPE Agent v1.0

HOPE (Highly Orchestrated Python Environment) Agent is an advanced AI agent orchestration system designed to manage complex AI tasks, facilitate communication between agents, and provide a user-friendly interface.

## Features

- **JSON-based Agent Management**: Create and manage AI agents using a flexible JSON structure.
- **Rich Command-line Interface**: Interact with the system using a colorful and formatted CLI.
- **LangChain Integration**: Utilize LangChain's powerful language model capabilities.
- **Groq API Usage**: Leverage Groq's advanced AI models for various tasks.
- **Advanced Memory Management**: Implement sophisticated short-term and long-term memory for agents.
- **Agent Communication**: Enable complex interactions between AI agents.
- **Dynamic Task Allocation**: Efficiently distribute tasks among available agents.
- **Modular Plugin System**: Extend functionality through a flexible plugin architecture.
- **Comprehensive Error Management**: Robust error handling and logging system.
- **Scalability and Performance Optimization**: Designed for high performance and scalability.

## Prerequisites

- Python 3.7 or later
- pip (Python package manager)

## Installation

1. Clone the repository:
   ```bash
   git clone https://github.com/U-C4N/hope-agent.git
   cd hope-agent
   ```

2. Install dependencies:
   ```bash
   pip install -e .
   ```

3. Set up your environment variables:
   Create a `.env` file in the root directory and add your API keys:
   ```
   GROQ_API_KEY=your_groq_api_key_here
   GROQ_MODEL=your_preferred_model
   MAX_AGENTS=10
   TASK_QUEUE_SIZE=100
   LOG_LEVEL=INFO
   ```

## Usage

1. Run the translator example:
   ```bash
   python example/translator.py
   ```

2. Follow the prompts to input the path to the text file you want to translate and the target language.

3. The system will use two AI agents (a translator and a quality assurance specialist) to translate the text and check its quality.

For more detailed usage instructions, refer to the `user-guide.txt` file.

## Contributing

Contributions are welcome! Please feel free to submit a Pull Request.

## License

This project is licensed under the MIT License - see the [LICENSE](LICENSE) file for details.

## Acknowledgments

- [Groq](https://groq.com/) for providing the AI API.
- [LangChain](https://langchain.com/) for the language model toolkit.
- [Rich](https://github.com/Textualize/rich) for beautiful console formatting.
- [python-dotenv](https://github.com/theskumar/python-dotenv) for environment variable management.