saphan config
Creates, edits and shows the installation's config file, which holds your identity and the installation's settings: ~/.saphan/etc/saphan.conf for a per-user installation, /opt/saphan/etc/saphan.conf f
Creates, edits and shows the installation's config file, which holds your identity and the installation's settings: ~/.saphan/etc/saphan.conf for a per-user installation, /opt/saphan/etc/saphan.conf for a machine-wide one. On a machine set up by an older release, ~/.saphan/config is still used while the new file does not exist. Start with saphan config init to set your identity, change single settings with saphan config set, and check what is in force with saphan config show.
saphan config forge
Manages connections to code-hosting services (forges, such as Gitea or GitHub) and which workspace repository each one serves.
saphan config forge assign-rows
Assigns pull-request records stored before multiple forge connections were supported to the connection their own stored URL and repository match, when exactly one connection matches. Records that match none or several stay unresolved, are never offered for merging, and are rewritten correctly on their repository's next poll. Each assignment prints one audit line; nothing is deleted and the command can be re-run.
| flag | type | default | what it does |
|---|---|---|---|
--dry-run | bool | false | Print what would be assigned and write nothing. |
saphan config forge migrate
Converts the older single [forge] section into one named forge connection plus one repository binding, in a single atomic write, after saving a copy of the previous file beside it. It then relabels, in the state store, the pull-request records the old [forge] section had seen, so they belong to the new connection. Re-running on an already-converted file changes nothing.
| flag | type | default | what it does |
|---|---|---|---|
--id | string | The name of the new connection, a lowercase slug; defaults to the forge kind, for example gitea. | |
--repo | string | The workspace repository the old forge setting serves; required when the workspace holds more than one repository, since the setting is never attached to a repository automatically. |
saphan config forge show
Shows the forge settings in effect for every workspace repository, or one with --repo: where each value comes from, and five states for each repository (saved, reachable, authenticated, branch protection verified, merge available).
| flag | type | default | what it does |
|---|---|---|---|
--repo | string | Show only this workspace repository. |
saphan config init
Sets up your identity in the config file. At a terminal it offers your git name and email first, otherwise a proposal from your system account, and always asks you to confirm or edit the actor name before writing. In scripts, --from or --actor writes without prompting; --display-name or --email alone still prompts, and without a terminal is refused. An incomplete source is refused and nothing is written. ⚠ Running it again replaces the identity in the file: with --actor, a display name or email you do not pass is cleared.
| flag | type | default | what it does |
|---|---|---|---|
--actor | string | Set the actor name directly, without lookup or prompt. | |
--display-name | string | Set the display name directly; it is used only for display. | |
--email | string | Set the email address directly (optional). | |
--from | string | Adopt your identity from git or system directly, without prompting. |
saphan config set
Writes one dotted setting to the config file and keeps every other setting in the file as it was, the same way git config <key> <value> does. saphan config set --help lists every setting this release knows, with what it controls. Settings that need a secret take the name of an entry in the credentials file, never the secret itself.
⚠ The value is not checked for a scheme: reach a remote store over https, and use plain http only for the store on this same host (http://127.0.0.1:5984).
saphan config show
Shows every setting you have made in the config file. Values of secret settings are shown redacted: only their names and where they come from are printed.
| flag | type | default | what it does |
|---|---|---|---|
--actor | string | Preview which actor name a command would act as if you passed it this --actor value. | |
--provenance | bool | false | Show where each value comes from: a command-line option, the SAPHAN_ACTOR environment variable, the config file, or unset. |
Global options apply to every command — see Every command.
saphan closure
Acts directly on a stream's closure: the cleanup job that a final owner decision (a merge, or a close without merging) starts.
saphan confine-exec
Applies this machine's own filesystem confinement and then runs a command inside it; Saphan Studio invokes it on a remote machine to start an agent within the boundary a run was given.