awesome-repositories.com
Blog
MCP
awesome-repositories.com

Discover the best open-source repositories with AI-powered search.

ExploreCurated searchesOpen-source alternativesSelf-hosted softwareBlogSitemap
ProjectMCP serverAboutHow we rankPress
LegalPrivacyTerms
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
hyperupcall avatar

hyperupcall/autoenv

0
View on GitHub↗

Autoenv

autoenv is a directory-based environment manager and shell workflow automator that automatically loads and unloads environment variables and scripts based on the current working directory. It functions as a hierarchical variable loader, applying configuration settings according to the directory hierarchy to isolate project environments.

The utility includes a checksum-based script validator that ensures security by requiring user approval before sourcing detected files. Once a file is authorized, the system remembers the trust setting by verifying file hashes, prompting the user again only if the content changes.

The tool manages the full lifecycle of a shell session by executing setup scripts upon entering a folder and running dedicated cleanup scripts when exiting. It prevents configuration leakage between projects by tracking and unsetting specifically loaded variables and injecting contextual metadata into the shell for use in conditional logic.

AI search

Explore more awesome repositories

Describe what you need in plain English — the AI ranks thousands of curated open-source projects by relevance.

Start searching with AI

Features

  • Directory-Triggered Variable Loading - Automatically loads and unloads environment variables and executes scripts triggered by directory changes.
  • Environment State Restorers - Tracks loaded variables to restore the previous shell state and prevent configuration leakage between projects.
  • Hierarchical Loaders - Applies environment settings according to the directory hierarchy by traversing from the root to the project folder.
  • Directory Exit Script Executions - Executes specific cleanup files upon leaving a directory to purge temporary environment settings.
  • Project Workflow Automation - Automates development setup by loading required secrets and executing project-specific scripts upon directory entry.
  • Shell Context Automations - Executes setup and cleanup scripts triggered by directory transitions to manage temporary shell resources.
  • Shell Configuration Management - Provides a framework for managing nested environment variables and cleanup scripts tied to a local directory hierarchy.
  • Environment Variable Scrubbers - Automatically removes shell variables when leaving a directory to maintain strict isolation between project environments.
  • Project-Specific Shell Isolation - Isolates project configurations by managing distinct shell variables based on the current working directory.
  • Shell Configuration Isolators - Prevents configuration leakage between projects by tracking and unsetting shell variables when leaving a directory.
  • Directory Transition - Runs dedicated cleanup scripts upon exiting directories to remove temporary variables and tear down resources.
  • Hierarchical Configuration Systems - Manages nested environment variables that apply settings based on the directory position in the filesystem.
  • Hierarchical Configuration Lookups - Traverses the directory hierarchy from root to project folder to source nested environment configurations.
  • Dynamic Variable Injection - Provides dynamic variable injection into the shell session based on the current working directory.
  • Scripting Context Providers - Exposes the current directory and sourced file as variables to enable conditional logic within environment scripts.
  • Checksum Verifiers - Uses file hashes to remember which environment scripts have been authorized by the user.
  • Trust Validation - Implements a security layer that requires user approval for scripts based on checksum verification.
  • Trusted Environment Loaders - Requires user confirmation and verifies file hashes before sourcing detected environment files.
  • Shell Environment Automators - Executes dedicated setup and cleanup scripts automatically upon entering or exiting project folders.
  • Shell Environment Injections - Injects dynamic metadata about paths and scripts into the shell environment to facilitate conditional logic.
  • Script Integrity Validators - Implements a checksum-based validator to ensure shell scripts are authorized and untampered before being sourced.
  • Shell Frameworks - Manages environment variables based on the current directory.
  • Terminal Productivity - Directory-based environment variable management.
6,034 stars·272 forks·Shell·MIT·19 views

Star history

Star history chart for hyperupcall/autoenvStar history chart for hyperupcall/autoenv

How this analysis was created: This summary and feature list are AI-generated from collected project material and can contain mistakes. Stars, license and language are imported from GitHub. Inclusion does not mean that we have tested or audited this project. Check the source documentation for any feature you depend on. Learn more on our About page.

Projects sharing features with Autoenv

These projects share indexed features with Autoenv. Shared tags can include platform or build tooling; verify the primary use case before treating a result as a replacement.
  • direnv/direnvdirenv avatar

    direnv/direnv

    15,189View on GitHub↗

    direnv is a shell environment manager and directory-based environment loader that automatically loads and unloads environment variables when switching between directories. It functions as a shell hook automation tool, injecting logic into the shell configuration to trigger environment updates based on the current project context. The project acts as a development environment isolator by localizing shell configurations, which prevents dependency conflicts and removes project-specific exports from global profile files. It includes specialized integration for Nix, allowing the loading of environ

    Go
    View on GitHub↗15,189
  • bash-it/bash-itBash-it avatar

    Bash-it/bash-it

    15,104View on GitHub↗

    Bash-it is a framework for organizing and enhancing the Bash shell environment. It provides a structured system for managing aliases, custom scripts, and environment settings to prevent clutter in the primary configuration file. The project includes a prompt customizer with predefined visual themes and a suite of intelligent command completions designed to increase typing speed and reduce input errors. The framework covers broad capability areas including shell configuration management, visual appearance customization, and environment troubleshooting through diagnostic utilities.

    Shellbashbash-aliasbash-completion
    View on GitHub↗15,104
  • jorgebucaran/fisherjorgebucaran avatar

    jorgebucaran/fisher

    9,300View on GitHub↗

    Fisher is a plugin manager and shell extension manager specifically for the Fish shell. It provides a system for installing, updating, and removing plugins, themes, functions, and completion scripts. The tool uses a flat-file state persistence method to track installed extensions in a plain text file, which enables the synchronization of shell environments across different systems using version control. It covers the full lifecycle of shell extensions, including the discovery of installed plugins, the installation of packages from remote repositories, and the development of distributable she

    Shellfishfish-pluginplugin-manager
    View on GitHub↗9,300
  • conda/condaconda avatar

    conda/conda

    7,444View on GitHub↗

    Conda is a binary package manager, cross-platform environment manager, and dependency resolution engine. It serves as a software repository manager that enables the installation and update of pre-compiled binaries and their dependencies across different operating systems. The system creates isolated execution spaces to prevent dependency conflicts between projects and uses a solver to calculate compatible package versions based on constraints from available repositories. It supports the creation of custom software packages from recipes, which can be hosted in public or private channels for di

    Python
    View on GitHub↗7,444
Compare all 30 related projects→

Frequently asked questions

What does hyperupcall/autoenv do?

autoenv is a directory-based environment manager and shell workflow automator that automatically loads and unloads environment variables and scripts based on the current working directory. It functions as a hierarchical variable loader, applying configuration settings according to the directory hierarchy to isolate project environments.

What are the main features of hyperupcall/autoenv?

The main features of hyperupcall/autoenv are: Directory-Triggered Variable Loading, Environment State Restorers, Hierarchical Loaders, Directory Exit Script Executions, Project Workflow Automation, Shell Context Automations, Shell Configuration Management, Environment Variable Scrubbers.

Which projects share features with hyperupcall/autoenv?

Projects with overlapping indexed features include: direnv/direnv — direnv is a shell environment manager and directory-based environment loader that automatically loads and unloads… bash-it/bash-it — Bash-it is a framework for organizing and enhancing the Bash shell environment. It provides a structured system for… jorgebucaran/fisher — Fisher is a plugin manager and shell extension manager specifically for the Fish shell. It provides a system for… ohmybash/oh-my-bash — Oh My Bash is a shell framework designed to manage the Bash environment through a modular configuration system. It… conda/conda — Conda is a binary package manager, cross-platform environment manager, and dependency resolution engine. It serves as… craftzdog/dotfiles-public — This project is a cross-platform dotfiles collection and shell configuration framework designed to standardize…