initial relay scaffold

This commit is contained in:
local
2026-05-11 20:03:27 -05:00
commit b9d86fa303
58 changed files with 7609 additions and 0 deletions
+18
View File
@@ -0,0 +1,18 @@
export const short =
'Credit-metered relay backend for Recap clients.'
export const long =
'Recap Relay is the operator-side service that fronts Gemini (and ' +
'optionally a local Parakeet+Gemma setup) for Recap installs. It ' +
"tracks per-install credit balances, enforces tier-based monthly " +
'quotas, and proxies transcribe/analyze calls so Core users can ' +
'summarize a handful of videos without paying and paid tiers get ' +
'metered access on the operator dime. Designed to be paired with ' +
'a Keysat license server.'
export const alertInstall =
'Recap Relay needs at least a Gemini API key + an admin password ' +
'set via the StartOS actions before it can serve traffic. Forward ' +
"a public hostname (e.g. relay.yourdomain.com) to this service's " +
"Web Interface via StartTunnel, then point your Recap install's " +
'"Set Relay URL" action at that hostname.'
+38
View File
@@ -0,0 +1,38 @@
import { setupManifest } from '@start9labs/start-sdk'
import { alertInstall, long, short } from './i18n'
export const manifest = setupManifest({
id: 'recap-relay',
title: 'Recap Relay',
license: 'Proprietary',
packageRepo: 'https://ten31.xyz',
upstreamRepo: 'https://ten31.xyz',
marketingUrl: 'https://ten31.xyz',
donationUrl: null,
docsUrls: [],
description: { short, long },
volumes: ['main'],
images: {
main: {
source: {
dockerBuild: {
workdir: '.',
dockerfile: './Dockerfile',
},
},
arch: ['x86_64', 'aarch64'],
},
},
alerts: {
install: alertInstall,
update: null,
uninstall: null,
restore: null,
start: null,
stop: null,
},
// Relay has no required dependencies — Gemini is internet-fronted
// and the optional Parakeet/Gemma backends are at user-configured
// URLs (typically a separate machine on the operator's LAN).
dependencies: {},
})