Vesper Guide
Vesper Website
Python Terminal & Editor

Python.Without the desk.

A fast, visual guide to Vesper on iPhone and iPad — from your first line of Python to scripts, GitHub repositories, and optional AI coding assistance.

Looking for Vesper? Return to the Vesper website at any time. This guide keeps a persistent website link at the top of the page.
Embedded CPython 3.14.6Local scripts Git & GitHubWorks offlineOptional AI
Vesper TerminalVesper ScriptsVesper Editor
01

Start Here

Vesper in one sentence

Vesper is a native Python workspace with an interactive Terminal, a private Scripts folder, a mobile-friendly Editor, GitHub repository tools, and an optional bring-your-own-provider AI coding assistant.

Try in TerminalCreate/Open .pyEditSaveRun

The five tabs

Terminal for Python and output. Scripts for local files and GitHub Sync. Editor for code and repository Git Actions. Settings for preferences and AI setup. About for app/runtime information and help.

Vesper About screen
Vesper is not a general Unix shell. There is no unrestricted shell access, arbitrary process launching, or pip package installation.
02

Your First Vesper Project

  1. Open Scripts and tap New Script.
  2. Name it greeting and tap Create.
  3. Open greeting.py and enter:
name = input("What is your name? ")
print(f"Hello, {name}! Welcome to Vesper.")
  1. Tap Save, then Run.
  2. Vesper opens Terminal. Type your name and submit it.
  3. Your greeting appears in Terminal. The script stays stored locally.
03

Terminal

Interactive Python

Enter Python beside the prompt and tap the circular Run Python arrow or press Return. The session is persistent until you reset it.

2 + 2

name = "Vesper"
print(f"Hello, {name}!")

Clear vs. Reset

Clear Terminal removes the visible transcript but keeps Python state and history. Reset Python Session reinitializes Python and clears interactive state/history while keeping saved scripts.

Vesper Terminal screen
Multi-line Python
When Python detects an incomplete block, the prompt changes from >>> to .... Continue submitting lines and finish with the normal blank line when needed.
History & programming shortcut keys
The shortcut row includes history Up/Down plus TAB, brackets, braces, colon, underscore, quotes and common operators. Terminal TAB inserts four spaces.
Script input()
When a running script calls input(), the prompt appears in Terminal and the input field becomes the answer field. Use Cancel Input to cancel a pending request.
Stopping code with CTRL-C
While code is executing and not waiting for input, Terminal shows CTRL-C. It requests a cooperative Python interrupt, normally producing KeyboardInterrupt.
04

Scripts Workspace

Vesper Scripts workspace

Your local project shelf

Scripts lists UTF-8 .py files stored in Vesper's local Scripts folder. Tap a file to open it in Editor.

  • Create new scripts
  • Import one .py file from Files
  • Rename or duplicate
  • Export or share
  • Delete with optional confirmation
Sibling scripts can generally import one another by module name because the Scripts workspace is also the working/import location.
from helper import useful_function
05

Editor

Made for coding on a phone

The Editor supports Python syntax coloring, auto-indent, auto-close pairs, word wrap, monospaced fonts, configurable font size, a programming shortcut row, and a live Lines / Characters / UTF-8 size status bar.

Run automatically saves changed source, switches to Terminal, and executes the script.

Vesper Editor
Find & Replace
Choose Editor options → Find & Replace. Search is literal and case-sensitive. Use Previous/Next, Replace, or Replace All. Changes remain in memory until saved.
Unsaved changes
A trailing dot in the editor title indicates unsaved changes. Opening another file, creating New, or closing prompts you to Save Changes, Discard Changes, or Cancel.
Editor options
New, Save As, Find & Replace, Export, Share, Close, Undo AI Change when available, and a read-only Word Wrap On/Off indicator.
06

AI Coding Assistant

AI is optional. Vesper does not sell AI credits, proxy your requests through a Vesper server, silently edit files, or automatically run generated code.

Bring your own provider

Built-in support includes OpenAI, Anthropic Claude, and Google Gemini, plus custom OpenAI-, Anthropic-, or Gemini-compatible endpoints.

API keys are stored in the iOS Keychain.

Vesper AI settings
What AI can do in Editor
Generate Code, Modify Code, Modify Selection, Explain Selection, Fix Selection, Refactor Selection, Fix Code, Explain Code, Refactor, Add Comments, Optimize, and Ask AI.
Review before applying
Code-changing responses are shown in a selectable preview with a compact change preview. Vesper attempts Python syntax validation before enabling Apply/Insert. Applied AI changes are not auto-saved and can be reversed once with Undo AI Change.
Fix a Terminal error
Tap Ask AI to Fix on a non-empty error. Vesper supplies the selected traceback and most recently run script as context. You still review and apply the proposal yourself.
07

Git & GitHub

Repository work inside Vesper

Vesper supports a focused GitHub workflow: connect your account, clone a repository, open and edit its files, create or switch branches, pull, commit changes, and push commits. Pull requests, issues, Actions, and repository administration stay on GitHub.

ConnectCloneBranchEdit & testCommitPush

Connecting to GitHub

  1. In Scripts, open GitHub Sync.
  2. On GitHub, create a fine-grained personal access token for the repositories you want to use.
  3. Give the token Contents: Read and write permission.
  4. Paste it into GitHub personal access token, then tap Connect to GitHub.
  5. Confirm your Git author name and email. Vesper uses these details when it creates commits.

Your token is stored only in the iOS Keychain. Do not put a token in a repository URL, source file, commit message, or support email.

Cloning and opening a repository

  1. Copy the repository’s full HTTPS URL from GitHub, such as https://github.com/owner/project.git.
  2. Paste it into Repository HTTPS URL under Clone from GitHub.
  3. Tap Clone Repository. Vesper downloads the repository and opens its repository view.
  4. Select a supported text file from Files to open it in the normal Vesper Editor.

If the repository has no commits, Vesper identifies it as empty and its file list may be empty until you add and commit content. A repository already cloned into Vesper cannot be cloned to the same local name again.

Working with branches

Open the repository and tap Git Actions. Under Branches, choose an existing branch with Switch Branch, or enter a name such as feature/my-change and tap Create and Switch.

A separate branch is useful but not required for every edit. Save or discard unsaved Editor changes before switching branches or pulling, because those actions update files in the working tree.

Editing repository files

Repository files use the same Vesper Editor as local scripts. You can use syntax highlighting, mobile programming keys, Python execution, the Terminal/REPL, and AI assistance where they apply. Save your file before reviewing Git status or changing branches.

Committing changes

  1. Make and save your edits.
  2. Open Git Actions and review Changed Files.
  3. Under Commit All, enter a meaningful message such as Fix input validation.
  4. Tap Commit All Changes.

A commit records the current changes in the repository on your device. It does not send them to GitHub.

Pulling and pushing

Use Pull in Git Actions to bring down compatible changes from GitHub. Save or discard open Editor changes first.

After committing, tap Push to send the current branch’s commits to GitHub. Editing changes a file, committing records that work locally, and pushing publishes the commits to the connected GitHub repository.

Example workflow

  1. Connect to GitHub and clone the repository.
  2. Create and switch to feature/my-change.
  3. Open and edit the Python code.
  4. Run or test the code in Vesper.
  5. Save, review changed files, and commit with a clear message.
  6. Push the branch to GitHub.
08

Settings

Vesper Settings

Make Vesper yours

Choose Dark or Light appearance, editor and terminal fonts/sizes, indentation, word wrap, syntax highlighting, auto-indent, auto-close brackets, shortcut keys, delete confirmation, and AI provider configuration.

Current implementation note
Show Line Numbers, Restore Last Open Script, and Remember Cursor Position may appear in Settings, but the supplied current implementation reference says their editor behavior is not yet wired up. This guide does not promise those features.
09

Privacy & Runtime Limits

Local by default

Your script source stays in Vesper's local workspace unless you explicitly Import, Export, Share, send relevant context in an AI request, or use GitHub Sync. GitHub network actions send repository data directly to GitHub, and AI requests go directly to the provider/endpoint you select.

Python on iOS

Vesper embeds CPython and its bundled standard library. Common pure-Python standard-library modules are the best fit. Do not assume desktop filesystem paths, shell commands, pip, compilers, arbitrary subprocesses, or unsupported native extensions are available.

10

Troubleshooting

My script looks stuck
Check Terminal for an input() prompt. If the program is computing, tap CTRL-C to request an interrupt.
Variables or imports are acting strangely
Use Terminal options → Reset Python Session for a clean interpreter.
run / cat / python cannot find a file
Run ls, verify the spelling and .py suffix, and confirm the file is in Scripts.
AI cannot connect
Check internet access, API key, model access, provider billing/quota, or custom base URL/protocol/header configuration. The editor and terminal continue to work without AI.
GitHub cannot connect, clone, pull, or push
Check internet access and reconnect GitHub if authentication fails. Confirm the fine-grained token can access that repository and has Contents read/write permission. Use a full https://github.com/owner/project.git URL, save open Editor changes before pulling or switching branches, commit changes before pushing, and verify the repository still exists on GitHub.
11

Command Reference

helpPrint the workspace command list.
clearClear the visible transcript.
pwdPrint /Scripts.
lsList Python scripts alphabetically.
cd [path]Accept only Scripts workspace aliases.
cat file.pyDisplay saved UTF-8 source.
run file.pyRun a saved script.
python file.pyAlias for run.
resetReset the Python session.
versionPrint Vesper and Python version.
Workspace commands are case-insensitive and restricted to /Scripts. Quoted filenames with spaces are supported: run "my program.py".