Skip to content

AnCLI v1.2.2 - Security Hardening & Architecture Refactor

Choose a tag to compare

@AHLLX AHLLX released this 16 Jul 11:28
· 33 commits to main since this release

What's New in v1.2.2

Security Fixes

API Key Secure Storage

  • API keys are no longer embedded in world-readable wrapper scripts. They are now stored in /data/local/tmp/ancli/secrets/<tool>.env with chmod 600, invisible to other processes.
  • Existing users: keys are auto-migrated on next ancli repair or ancli config.

Shell Injection Defense

  • All env var values are now escaped with shlex.quote() to prevent injection via malformed API key values.

SSL Verification Scoped Per-Request

  • Removed the global ssl._create_unverified_context monkey-patch. Certificate verification is now only bypassed for specific registry/installer requests (where PRoot container CAs may be incomplete), not globally.

Architecture Improvements

Registry-Driven Installer Dispatch

  • The hardcoded agy and grok install branches are replaced by a generic _install_pipe_script() function. New apps using script-based installs only need install_method: pipe_script + installer_url in registry.json.

ancli list is Now Offline

  • No longer triggers a network request. Uses local registry cache only — instant and offline-safe.

Other Fixes

  • Fcitx5 now only installed on CJK-locale devices (saves ~50 MB on international devices)
  • uninstall.sh uses pkill -f instead of killall proot to avoid killing unrelated proot sessions
  • All version strings unified to v1.2.2

Full changelog: https://github.com/AHLLX/AnCLI-Android/blob/main/CHANGELOG.md