Nexterm
The Local Developer Operating System CLI.
Address your software projects by name across workspaces, automate environment setup, defend repositories with pre-push hooks, edit commands with terminal line controls, and release packages securely.
🚀 Installation
Install the package directly from PyPI:
pip install nexterm
This installs the primary CLI executable nexterm, along with aliases (workspace, worksapce, developeros, work).
Verify Installation
nexterm --version
nexterm --help
⚡ Quick Start
# 1. Launch the interactive DeveloperOS shell
workspace
# 2. Index your workspace directories
workspace scan ~/code
# 3. Search projects by name, language, or framework
workspace find react
workspace find --language python
# 4. Launch your editor and track usage
workspace open portfolio
# 5. Auto-bootstrap project dependencies, environment, stack & browser
workspace start portfolio
# 6. Diagnose toolchains, missing .env files, and port conflicts
workspace doctor --fix
# 7. Install pre-push Git hook repository defense
workspace guardian install-hook
# 8. Run pre-release validation & artifact secret scan
workspace release check
🔥 Key Subsystems & Features
1. Interactive Terminal Shell & Line Editor Subsystem
Launch workspace to enter an interactive CWD prompt supporting native OS commands (ls, cd, git, npm, python, docker) alongside DeveloperOS commands.
Line Editing Keyboard Shortcuts
| Shortcut | Action | Description |
|---|---|---|
Ctrl+Backspace / Ctrl+Delete |
DELETE_PREVIOUS_WORD |
Deletes whole whitespace/delimiter-delimited words |
Alt+Backspace |
DELETE_PREVIOUS_WORD |
Alt-based word deletion |
Ctrl+Left / Ctrl+Right |
MOVE_CURSOR_WORD |
Moves cursor backward/forward by whole words |
Home / Ctrl+A |
MOVE_CURSOR_START |
Moves cursor to the start of the line |
End / Ctrl+E |
MOVE_CURSOR_END |
Moves cursor to the end of the line |
Ctrl+U |
DELETE_TO_START |
Deletes text from cursor position to line start |
Ctrl+K |
DELETE_TO_END |
Deletes text from cursor position to line end |
2. Context-Aware Tab Completion Engine
DeveloperOS features 7 intelligent completion providers triggered by <Tab>:
- Top-Level Commands:
start,open,doctor,find,scan,guardian,release, etc. - Project Names: Auto-completes indexed project names when typing
start,open,doctor,fix. - PATH Executables: Completes binary executables available on your system
PATH. - Native Tool Subcommands: Rich subcommands for
git,docker,npm,pip,python,node,cargo. - Subcommand Options: Options for
guardian(check,install-hook,remove-hook,status),release(check,build,verify),stack,tag,pref,daemon. - Directory-Only Completion: Smart filtering for
cd <dir>. - Filesystem Completion: Path completion for file arguments.
3. Pre-Push Guardian Subsystem (workspace guardian)
Blocks broken, insecure, unformatted, or incomplete code from reaching remote branches before git push executes.
# Install the Git pre-push hook into .git/hooks/pre-push
workspace guardian install-hook
# Check hook installation status
workspace guardian status
# Run full local pre-push validation engine manually
workspace guardian check
# Remove Git pre-push hook
workspace guardian remove-hook
Pre-Push Verification Pipeline:
- Git Hygiene: Validates
.gitignorepresence and checks for untracked secret files (.env,*.db,*.key,*.pem,*.log,id_rsa). - Diff Secret Scanner: Scans diff additions and changed files for API keys, private keys (
id_rsa,-----BEGIN PRIVATE KEY-----), GitHub tokens (ghp_), PyPI tokens (pypi-), and Slack bot tokens (xoxb). - Dependency & Version Validation: Checks
pyproject.tomlsyntax and verifies code-to-package version alignment. - Automated Test Suite: Executes
pytestunit test suite. - Build & Metadata Gate: Executes
python -m buildandtwine check dist/*. - Artifact Secret Content Scanner: Scans built
.whland.tar.gzfor secrets or forbidden files. - Clean Venv Smoke Test: Installs built wheel into an isolated temporary virtual environment and verifies
workspace --version/workspace --help. - Emergency Bypass: Pass
SKIP_GUARDIAN=1 git pushorgit push --no-verifyto bypass with automated logging.
4. PyPI Release Subsystem (workspace release)
Professional release automation complying with PEP 517/518 and GitHub Actions PyPI Trusted Publishing (OIDC).
# Run 7-stage pre-release check locally
workspace release check
# Build wheel and sdist packages into dist/
workspace release build
# Validate metadata, scan artifact content secrets, and test clean venv installation
workspace release verify
Security Guarantee:
- ZERO PyPI Tokens Required: Uses GitHub Actions OpenID Connect (
id-token: write) viapypa/gh-action-pypi-publish@release/v1. Zero passwords or long-lived secrets in source code,.env, configs, or GitHub secrets.
5. Structured Error UX Subsystem (workspace errors)
Replaces cluttered error tracebacks with human-readable diagnostic cards answering:
- WHAT failed?
- WHERE did it fail?
- WHY did it fail?
- WHAT was the exit code?
- WHAT actionable steps can the user take next?
Includes automatic secret redaction (SecretRedactor) and SQLite history logging viewable via workspace errors.
6. Doctor Diagnostics & Repair Subsystem (workspace doctor)
Diagnoses toolchain issues, port conflicts, missing .env files, and database corruption, offering automated repair via workspace doctor --fix.
7. Autonomous Local AI & Fix Agent (workspace ai / workspace fix)
Local hardware profiler detecting CPU, RAM, GPU, and disk specs to recommend and download GGUF/Ollama model configurations for local offline AI assistance:
workspace ai install
workspace ask "How do I set up a PostgreSQL connection pool in Python?"
workspace explain portfolio
workspace fix portfolio
🛠️ CLI Command Reference
| Command | Subcommands / Flags | Description |
|---|---|---|
workspace |
(none) | Launches the interactive DeveloperOS shell |
workspace scan |
[PATHS...] |
Scans directories and indexes projects in SQLite DB |
workspace find |
[QUERY] [--language] [--framework] |
Searches projects by name, language, or framework |
workspace open |
<project> |
Opens project in default IDE and records usage stats |
workspace start |
<project> [--no-browser] |
Auto-bootstraps project dependencies, env, stack, and browser |
workspace clone |
<repo_url> |
Clones repository, detects stack, and registers in index |
workspace doctor |
[--fix] |
Runs diagnostic checks and optionally applies safe repairs |
workspace guardian |
check | install-hook | remove-hook | status |
Manages Pre-Push Guardian repository defense gate |
workspace release |
check | build | verify |
Validates, builds, and tests PyPI packages for release |
workspace errors |
[--limit] |
View structured error history log |
workspace stack |
start | stop | status |
Orchestrates multi-service dependency-graph stacks |
workspace daemon |
start | stop | status |
Controls background process and health monitor |
workspace tag |
add | rm | list |
Manages custom tags on indexed projects |
workspace pref |
set | get | list |
Sets developer preferences (editor, package manager) |
workspace ai |
install | list | remove |
Manages local GGUF/Ollama AI models |
workspace ask |
<prompt> |
Queries local AI assistant with project context |
workspace explain |
<project> |
Explains project architecture and file structure |
workspace fix |
<project> |
Autonomous AI fix agent for project errors |
💻 Development & Contributing
Setup Development Environment
# Clone the repository
git clone https://github.com/Mr-Anonymous-Guy/Nexterm.git
cd Nexterm
# Install in editable mode with development dependencies
pip install -e .[dev]
Running Test Suite
# Run full unit test suite (200+ tests)
pytest -v
# Run specific test modules
pytest tests/test_guardian.py -v
pytest tests/test_release.py -v
pytest tests/test_terminal.py -v
pytest tests/test_errors.py -v
pytest tests/test_core.py -v
Running Pre-Push Guardian & Pre-Release Checks
python scripts/pre_push_guardian.py
python scripts/release_check.py
For full release architecture documentation, see Docs/PYPI_RELEASE_ARCHITECTURE.md and Docs/GIT_GUARDIAN_ARCHITECTURE.md.
📄 License
Distributed under the MIT License. See LICENSE for details.
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file nexterm-0.1.1.tar.gz.
File metadata
- Download URL: nexterm-0.1.1.tar.gz
- Upload date:
- Size: 97.8 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
524f775431365a60d0d1b0ced682b5c5f0fb41771ac90ec0bf6bc091688a73d9
|
|
| MD5 |
83ff07566a15589249f65739df8d9668
|
|
| BLAKE2b-256 |
ff45bae4c8525b4de0dfb374828de60a7b39e39f42ecac518a55d1924ba80e04
|
Provenance
The following attestation bundles were made for nexterm-0.1.1.tar.gz:
Publisher:
release.yml on Mr-Anonymous-Guy/Nexterm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nexterm-0.1.1.tar.gz -
Subject digest:
524f775431365a60d0d1b0ced682b5c5f0fb41771ac90ec0bf6bc091688a73d9 - Sigstore transparency entry: 2423266471
- Sigstore integration time:
-
Permalink:
Mr-Anonymous-Guy/Nexterm@8c14cbe77ded491ee0d495c2be48d12bf9a3ef81 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/Mr-Anonymous-Guy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@8c14cbe77ded491ee0d495c2be48d12bf9a3ef81 -
Trigger Event:
push
-
Statement type:
File details
Details for the file nexterm-0.1.1-py3-none-any.whl.
File metadata
- Download URL: nexterm-0.1.1-py3-none-any.whl
- Upload date:
- Size: 66.2 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/7.0.0 CPython/3.13.14
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
84b3bc7dcecdefb314dc9562bc6dde9c1e415fea41494bcfaba5f50c76bdbd25
|
|
| MD5 |
45812f4c02244dea48187ff419a6f8b1
|
|
| BLAKE2b-256 |
fc0b28c193c5ea279b7c826b10d64dcd6fe38baa888765a05cf8f29f5826c994
|
Provenance
The following attestation bundles were made for nexterm-0.1.1-py3-none-any.whl:
Publisher:
release.yml on Mr-Anonymous-Guy/Nexterm
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
nexterm-0.1.1-py3-none-any.whl -
Subject digest:
84b3bc7dcecdefb314dc9562bc6dde9c1e415fea41494bcfaba5f50c76bdbd25 - Sigstore transparency entry: 2423266517
- Sigstore integration time:
-
Permalink:
Mr-Anonymous-Guy/Nexterm@8c14cbe77ded491ee0d495c2be48d12bf9a3ef81 -
Branch / Tag:
refs/tags/v0.1.1 - Owner: https://github.com/Mr-Anonymous-Guy
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@8c14cbe77ded491ee0d495c2be48d12bf9a3ef81 -
Trigger Event:
push
-
Statement type: