vita-agent-use

agent
Guvenlik Denetimi
Uyari
Health Uyari
  • License — License: GPL-3.0
  • Description — Repository has a description
  • Active repo — Last push 0 days ago
  • Low visibility — Only 6 GitHub stars
Code Gecti
  • Code scan — Scanned 12 files during light audit, no dangerous patterns found
Permissions Gecti
  • Permissions — No dangerous permissions requested

Bu listing icin henuz AI raporu yok.

SUMMARY

Let an AI agent use your PS Vita.

README.md

Agent Use for Vita

Let an AI agent use your PS Vita.

vita-agent-use is like computer use for AI agents, but for a PS Vita. An agent such as Claude, Codex or Gemini can see the screen, press buttons, touch the screen, launch apps, move files and watch for crashes. It is built for agentic PS Vita development: the agent builds your homebrew, deploys it, launches it, plays it, reads the logs and crash dumps, then fixes the code and does it again, without you touching the console.

What the agent can do

👀 See Take screenshots of games and LiveArea; read console info, installed apps, plugins, LiveArea layout and content
🎮 Play Precisely timed button, stick and multi-touch input on the front and rear panels, swipes, and saved per-game macros
📦 Deploy Verified file upload and download, VPK installs, launching and closing apps
🐞 Debug Real-time crash-dump, error-dialog and log events pushed to the PC; CPU, FPS and memory metrics
🔁 Run One command does a whole test run: deploy, launch, wait for a log line or a crash, collect metrics, clean up

Built to be safe

You stay in control of your console:

  • You approve pairing. A new PC can only connect after you tap OK on the Vita.
  • Press PS + SELECT at any time to stop the agent immediately.
  • Risky changes need your OK on the Vita. Before the agent can write to tai/ or shell/, or delete apps and saves, the Vita asks you to confirm. The agent cannot press OK for you.
  • Some things can't be changed at all. System partitions are read-only, and core plugins such as HENkaku, YAMT and storagemgr can never be overwritten or deleted.
  • config.txt edits are guarded. The agent must show you a diff to review, the edit is checked so it can't break your plugins, and the file is read back to confirm it was written correctly.
  • Deletions are reversible until confirmed. Files go to trash before they are permanently removed, and every write is recorded in an audit log on the Vita.
  • The connection is secure. It uses mutual TLS with a pinned device certificate and short-lived tokens.

How it works

┌──────────── PC ─────────────┐        TLS        ┌────────────── PS Vita ──────────────┐
│ AI agent                    │                   │ vita_agent_loader.suprx  (*main)    │
│   └─ client/vita_agent.py   │ ◀───────────────▶│   └─ vita_agent_shell.suprx         │
│        └─ serve (events)    │  commands/events  │ vita_agent_kernel.skprx  (*KERNEL)  │
└─────────────────────────────┘                   └─────────────────────────────────────┘
  • On the Vita: the plugin has a small kernel bridge, a loader for Shell, and a runtime that runs inside Shell.
  • On the PC: the agent drives a Python command-line tool that returns JSON. An optional serve process stays connected so the Vita can push events (crashes, dialogs, log lines, metrics) as they happen, rather than the agent polling for them.

Requirements

  • A PS Vita on 3.65
  • VitaShell, used for setup over FTP and as the recovery copy that guarded config edits require
  • A PC with Python 3 and the cryptography package
  • To build the plugin yourself: VitaSDK, CMake and the Mbed TLS 3.6.7 source

Installation

1. Build the plugin

cmake -S . -B build
cmake --build build

2. Install it on the Vita

Copy vita_agent_kernel.skprx, vita_agent_loader.suprx and vita_agent_shell.suprx to ur0:tai/, then add two lines to ur0:tai/config.txt:

*KERNEL
ur0:tai/vita_agent_kernel.skprx

*main
ur0:tai/vita_agent_loader.suprx

The Shell runtime isn't listed in config.txt; the loader starts it. Reboot the Vita.

3. Set up the PC

pip install cryptography
python3 client/vita_agent.py bootstrap

bootstrap is an interactive setup wizard. It asks for a directory to hold config.json and the private pc/ identity, your Vita's IP address, and the agent's name. It reads your config.txt over VitaShell FTP to check for incompatible plugins, but never writes anything to the Vita.

When setup finishes, run the export VITA_AGENT_CONFIG_DIR=... command it prints. The variable points to the chosen directory, not the JSON file. Set it in your agent's launch environment too, or add the export to your shell startup file to retain it across terminals. Commands always read $VITA_AGENT_CONFIG_DIR/config.json; there is no --config flag or automatic search in the current directory. Existing setups can use their existing directory without creating a new identity.

4. Pair

export VITA_AGENT_CONFIG_DIR="/absolute/path/chosen-in-bootstrap"
python3 client/vita_agent.py session pair   # tap OK on the Vita
python3 client/vita_agent.py serve          # optional: leave running for live events

That's it. Now point your agent at this repository.

Plugin compatibility

Recommended alongside vita-agent-use:

Plugin Why
NoSleep Stops the Vita from sleeping during long agent sessions
NoLockScreen Skips the lock screen, so the agent can reach LiveArea after a reboot or wake

Incompatible or not recommended. bootstrap checks for these and warns you:

Plugin Status
Vitacompanion ❌ Incompatible.
BGFTP ⚠️ Not recommended alongside
catlog ⚠️ Not recommended alongside
kvdb ⚠️ Not recommended alongside
psp2shell ⚠️ Not recommended alongside
vdbtcp ⚠️ Not recommended alongside

Try it yourself

The CLI is meant for agents, but you can run it too:

python3 client/vita_agent.py system snapshot
python3 client/vita_agent.py screen capture --output screen.jpg
python3 client/vita_agent.py app list
python3 client/vita_agent.py --help

Companion tools

The agent can also use these tools when profiling or debugging:

Credits

License

vita-agent-use is licensed under the GNU General Public License v3.0.

Yorumlar (0)

Sonuc bulunamadi