Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
20 changes: 10 additions & 10 deletions apps/loopover-ui/src/routes/docs.beta-onboarding.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -35,8 +35,8 @@ function BetaOnboarding() {
<Callout>
<strong>Product positioning.</strong> LoopOver is a deterministic base-agent and
control-plane layer for the Gittensor ecosystem. It is{" "}
<a href="https://github.com/jsonbored/gittensory" target="_blank" rel="noreferrer">
jsonbored/gittensory
<a href="https://github.com/jsonbored/loopover" target="_blank" rel="noreferrer">
jsonbored/loopover
</a>
, independent of{" "}
<a href="https://github.com/entrius/gittensor" target="_blank" rel="noreferrer">
Expand All @@ -59,42 +59,42 @@ function BetaOnboarding() {
<Link to="/docs/quickstart">Quickstart</Link>.
<CodeBlock
code={`npm i -g @loopover/mcp@latest
gittensory-mcp --help`}
loopover-mcp --help`}
/>
</li>
<li>
<strong>Sign in.</strong> GitHub Device Flow — no PAT storage.
<CodeBlock
code={`gittensory-mcp login
gittensory-mcp whoami`}
code={`loopover-mcp login
loopover-mcp whoami`}
/>
</li>
<li>
<strong>Run diagnostics.</strong> Confirms API reachability, auth, source-upload posture,
and optional local score-preview wiring.
<CodeBlock code="gittensory-mcp doctor" />
<CodeBlock code="loopover-mcp doctor" />
</li>
<li>
<strong>Plan next work.</strong> Ranked actions, lane context, and blockers —
copilot-only; does not open PRs or post comments.
<CodeBlock
code={`gittensory-mcp agent plan --login your-login --json
code={`loopover-mcp agent plan --login your-login --json
# optional: --repo owner/repo`}
/>
</li>
<li>
<strong>Preflight the branch.</strong> Branch blockers, queue pressure, and maintainer-fit
notes before you push.
<CodeBlock
code={`gittensory-mcp analyze-branch --login your-login --json
gittensory-mcp preflight --login your-login --json`}
code={`loopover-mcp analyze-branch --login your-login --json
loopover-mcp preflight --login your-login --json`}
/>
</li>
<li>
<strong>Prepare a public-safe packet.</strong> Maintainer-readable PR description with no
private scoring language.
<CodeBlock
code={`gittensory-mcp agent packet --login your-login --repo owner/repo --json`}
code={`loopover-mcp agent packet --login your-login --repo owner/repo --json`}
/>
</li>
</ol>
Expand Down
12 changes: 6 additions & 6 deletions apps/loopover-ui/src/routes/docs.github-app.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -10,7 +10,7 @@ export const Route = createFileRoute("/docs/github-app")({
{
name: "description",
content:
"How the LoopOver GitHub App reviews pull requests once installed. Self-hosting is the only currently available path; a shared, centrally hosted App is planned as a future offering. The LoopOver Orb Review Agent check plus a review comment posted as gittensory[bot]. Choose repos, configure sticky PR panels, advisory checks, and optional review-agent enforcement.",
"How the LoopOver GitHub App reviews pull requests once installed. Self-hosting is the only currently available path; a shared, centrally hosted App is planned as a future offering. The LoopOver Orb Review Agent check plus a review comment posted as loopover[bot]. Choose repos, configure sticky PR panels, advisory checks, and optional review-agent enforcement.",
},
{ property: "og:title", content: "GitHub App configuration — LoopOver docs" },
{
Expand Down Expand Up @@ -39,7 +39,7 @@ function GithubApp() {
available path. Each review produces two surfaces: the{" "}
<strong>LoopOver Orb Review Agent</strong> check run (and the advisory{" "}
<strong>LoopOver Context</strong> check), and a single review comment posted by{" "}
<code>gittensory[bot]</code> that updates in place as the PR evolves. The review behavior
<code>loopover[bot]</code> that updates in place as the PR evolves. The review behavior
below this page's Install section (PR panel, checks, gate modes, config-as-code) is the same
regardless of which connection mode your self-hosted App uses.
</p>
Expand Down Expand Up @@ -101,8 +101,8 @@ GET /v1/installations/:id/repair`}
<h2>PR panel</h2>
<p>
The PR panel is the review comment the LoopOver app posts on each pull request. It is one
sticky comment authored by <code>gittensory[bot]</code> that updates in place — the app
edits the same comment instead of adding new ones. It shows a public-safe readiness score,
sticky comment authored by <code>loopover[bot]</code> that updates in place — the app edits
the same comment instead of adding new ones. It shows a public-safe readiness score,
concrete signal evidence, and short actions for linked issues, related work, review load,
validation evidence, open PR queue, contributor context, and Gate result.
</p>
Expand Down Expand Up @@ -341,12 +341,12 @@ review:
code={`# Roll grounding + the unified comment onto one repo:
LOOPOVER_REVIEW_GROUNDING="true"
LOOPOVER_REVIEW_UNIFIED_COMMENT="true"
LOOPOVER_REVIEW_REPOS="JSONbored/gittensory"`}
LOOPOVER_REVIEW_REPOS="JSONbored/loopover"`}
/>

<h2>Dogfood mode</h2>
<p>
For repos like <code>JSONbored/gittensory</code> and <code>awesome-claude</code>, enable PR
For repos like <code>JSONbored/loopover</code> and <code>awesome-claude</code>, enable PR
comments, labels, Context, and Gate together to test the full product surface. If another
maintainer agent can merge quickly, configure that agent to wait for{" "}
<code>LoopOver Orb Review Agent</code> before merge or close.
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -280,7 +280,7 @@ function MaintainerSelfHosting() {

<h2>Moving a repo between hosted and self-host</h2>
<Callout variant="note" title="Hosted is currently paused">
&quot;Hosted&quot; here means the private managed-beta shared <code>gittensory</code> App
&quot;Hosted&quot; here means the private managed-beta shared <code>loopover</code> App
described in <Link to="/docs/github-app">GitHub App configuration</Link> — it previously
accepted new installs and is currently paused while self-hosted Orb is the primary way to
run LoopOver. A new centrally hosted offering is planned for the future. "Switching from
Expand Down Expand Up @@ -318,7 +318,7 @@ function MaintainerSelfHosting() {
</li>
<li>
Uninstall the shared hosted App from that repo (repo Settings → Integrations → GitHub Apps
gittensory → Uninstall, or the equivalent org-level App settings page) once you&apos;ve
loopover → Uninstall, or the equivalent org-level App settings page) once you&apos;ve
confirmed the self-host App is reviewing PRs correctly. Leaving both installed means two
reviewers post competing checks and comments on the same PRs.
</li>
Expand Down Expand Up @@ -354,8 +354,8 @@ function MaintainerSelfHosting() {
</Callout>
<p>
What stays identical for contributors either way: the review still posts as a{" "}
<code>gittensory[bot]</code>-style comment (under your own App&apos;s slug once you migrate,
not literally <code>gittensory[bot]</code>) plus the same check-run shape, and the gate
<code>loopover[bot]</code>-style comment (under your own App&apos;s slug once you migrate,
not literally <code>loopover[bot]</code>) plus the same check-run shape, and the gate
semantics in <Link to="/docs/tuning">Tuning your reviews</Link> and{" "}
<Link to="/docs/how-reviews-work">How reviews work</Link> are unchanged — only the
infrastructure and the settings storage location differ.
Expand Down
30 changes: 15 additions & 15 deletions apps/loopover-ui/src/routes/docs.mcp-clients.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -36,27 +36,27 @@ function McpClients() {
<p>These commands print config only. They do not mutate your local client files.</p>
<CodeBlock
lang="bash"
code={`gittensory-mcp init-client --print codex
gittensory-mcp init-client --print claude
gittensory-mcp init-client --print cursor
gittensory-mcp init-client --print mcp
gittensory-mcp init-client --print vscode`}
code={`loopover-mcp init-client --print codex
loopover-mcp init-client --print claude
loopover-mcp init-client --print cursor
loopover-mcp init-client --print mcp
loopover-mcp init-client --print vscode`}
/>
<p>
<code>--print mcp</code> uses the same JSON snippet as Claude Desktop and Cursor for other
stdio MCP hosts that expect the <code>mcpServers</code> shape. Every generated snippet
assumes <code>gittensory-mcp</code> is on your <code>PATH</code> (install it globally first,
assumes <code>loopover-mcp</code> is on your <code>PATH</code> (install it globally first,
per <a href="/docs/quickstart">Quickstart</a>) — pass{" "}
<code>--command /absolute/path/to/gittensory-mcp</code> if your client doesn't inherit your
<code>--command /absolute/path/to/loopover-mcp</code> if your client doesn't inherit your
shell PATH.
</p>

<h2>Codex (OpenAI)</h2>
<CodeBlock
filename="~/.codex/config.toml"
lang="toml"
code={`[mcp_servers.gittensory]
command = "gittensory-mcp"
code={`[mcp_servers.loopover]
command = "loopover-mcp"
args = ["--stdio"]`}
/>

Expand All @@ -66,8 +66,8 @@ args = ["--stdio"]`}
lang="json"
code={`{
"mcpServers": {
"gittensory": {
"command": "gittensory-mcp",
"loopover": {
"command": "loopover-mcp",
"args": ["--stdio"]
}
}
Expand All @@ -80,8 +80,8 @@ args = ["--stdio"]`}
lang="json"
code={`{
"mcpServers": {
"gittensory": {
"command": "gittensory-mcp",
"loopover": {
"command": "loopover-mcp",
"args": ["--stdio"]
}
}
Expand All @@ -98,9 +98,9 @@ args = ["--stdio"]`}
lang="json"
code={`{
"servers": {
"gittensory": {
"loopover": {
"type": "stdio",
"command": "gittensory-mcp",
"command": "loopover-mcp",
"args": ["--stdio"]
}
}
Expand Down
44 changes: 22 additions & 22 deletions apps/loopover-ui/src/routes/docs.miner-quickstart.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -60,18 +60,18 @@ npx -y @loopover/mcp@latest --help
npm i -g @loopover/mcp@latest

# sign in, confirm identity, check the session
gittensory-mcp login
gittensory-mcp whoami --json
gittensory-mcp status --json
loopover-mcp login
loopover-mcp whoami --json
loopover-mcp status --json

# verify API, auth, and the local scorer before any analysis
gittensory-mcp doctor --json`}
loopover-mcp doctor --json`}
/>
<Callout variant="safety">
Session tokens are <strong>LoopOver tokens backed by GitHub identity</strong>, not your
GitHub PATs. Source upload stays disabled (<code>LOOPOVER_UPLOAD_SOURCE=false</code>) and
local absolute paths are redacted from anything that leaves your machine. Log out anytime
with <code>gittensory-mcp logout</code>.
with <code>loopover-mcp logout</code>.
</Callout>

<h2>1. Choose your lane</h2>
Expand All @@ -83,8 +83,8 @@ gittensory-mcp doctor --json`}
</p>
<CodeBlock
code={`# what should I work on next, and what lane does this repo support?
gittensory-mcp agent plan --login your-login --repo owner/repo --json
gittensory-mcp repo-decision --login your-login --repo owner/repo --json`}
loopover-mcp agent plan --login your-login --repo owner/repo --json
loopover-mcp repo-decision --login your-login --repo owner/repo --json`}
/>
<p>
The repo&apos;s configured lane comes back as one of these (it is set by the repo&apos;s
Expand Down Expand Up @@ -120,9 +120,9 @@ gittensory-mcp repo-decision --login your-login --repo owner/repo --json`}
then generate the public-safe packet to paste into the PR body.
</p>
<CodeBlock
code={`gittensory-mcp agent plan --login your-login --repo owner/repo --json
gittensory-mcp preflight --login your-login --repo owner/repo --base origin/main --validation "passed|npm test|summary" --json
gittensory-mcp agent packet --login your-login --repo owner/repo --base origin/main --json`}
code={`loopover-mcp agent plan --login your-login --repo owner/repo --json
loopover-mcp preflight --login your-login --repo owner/repo --base origin/main --validation "passed|npm test|summary" --json
loopover-mcp agent packet --login your-login --repo owner/repo --base origin/main --json`}
/>

<h2>3. Issue-solving PR lane</h2>
Expand All @@ -133,9 +133,9 @@ gittensory-mcp agent packet --login your-login --repo owner/repo --base origin/m
</p>
<CodeBlock
code={`# branch named/described so the linked issue is detected, e.g. "Fixes #123"
gittensory-mcp agent plan --login your-login --repo owner/repo --json
gittensory-mcp preflight --login your-login --repo owner/repo --base origin/main --branch-eligibility eligible --validation "passed|npm test|summary" --json
gittensory-mcp agent packet --login your-login --repo owner/repo --base origin/main --json`}
loopover-mcp agent plan --login your-login --repo owner/repo --json
loopover-mcp preflight --login your-login --repo owner/repo --base origin/main --branch-eligibility eligible --validation "passed|npm test|summary" --json
loopover-mcp agent packet --login your-login --repo owner/repo --base origin/main --json`}
/>

<h2>4. Issue discovery lane</h2>
Expand All @@ -146,8 +146,8 @@ gittensory-mcp agent packet --login your-login --repo owner/repo --base origin/m
loops.
</p>
<CodeBlock
code={`gittensory-mcp agent plan --login your-login --repo owner/repo --objective "find a high-proof issue" --json
gittensory-mcp decision-pack --login your-login --json`}
code={`loopover-mcp agent plan --login your-login --repo owner/repo --objective "find a high-proof issue" --json
loopover-mcp decision-pack --login your-login --json`}
/>

<h2>5. Docs and context work</h2>
Expand All @@ -157,9 +157,9 @@ gittensory-mcp decision-pack --login your-login --json`}
public-safe artifact regardless of whether the change is code or docs.
</p>
<CodeBlock
code={`gittensory-mcp agent plan --login your-login --repo owner/repo --json
gittensory-mcp preflight --login your-login --repo owner/repo --base origin/main --validation "passed|docs build|summary" --json
gittensory-mcp agent packet --login your-login --repo owner/repo --base origin/main --json`}
code={`loopover-mcp agent plan --login your-login --repo owner/repo --json
loopover-mcp preflight --login your-login --repo owner/repo --base origin/main --validation "passed|docs build|summary" --json
loopover-mcp agent packet --login your-login --repo owner/repo --base origin/main --json`}
/>

<h2>6. Repo-specific lanes</h2>
Expand All @@ -170,8 +170,8 @@ gittensory-mcp agent packet --login your-login --repo owner/repo --base origin/m
before you commit to a path.
</p>
<CodeBlock
code={`gittensory-mcp repo-decision --login your-login --repo owner/repo --json
gittensory-mcp analyze-branch --login your-login --repo owner/repo --base origin/main --pending-merged-prs 3 --expected-open-prs 0 --scenario-note "after the queue clears" --json`}
code={`loopover-mcp repo-decision --login your-login --repo owner/repo --json
loopover-mcp analyze-branch --login your-login --repo owner/repo --base origin/main --pending-merged-prs 3 --expected-open-prs 0 --scenario-note "after the queue clears" --json`}
/>

<h2>Validation expectations (every lane)</h2>
Expand All @@ -183,8 +183,8 @@ gittensory-mcp analyze-branch --login your-login --repo owner/repo --base origin
validation, not a guess.
</p>
<CodeBlock
code={`gittensory-mcp doctor --json
gittensory-mcp preflight --login your-login --repo owner/repo --base origin/main --validation "passed|npm test|summary" --json`}
code={`loopover-mcp doctor --json
loopover-mcp preflight --login your-login --repo owner/repo --base origin/main --validation "passed|npm test|summary" --json`}
/>
<Callout variant="safety">
The PR packet from <code>agent packet</code> is <strong>public-safe</strong>: it is scrubbed
Expand Down
8 changes: 4 additions & 4 deletions apps/loopover-ui/src/routes/docs.miner-workflow.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -34,7 +34,7 @@ export function MinerWorkflow() {
<>
Pull a decision pack — lane context, repo targets to pursue or avoid, freshness, and
ranked next actions.
<CodeBlock code={`gittensory-mcp agent plan --login your-login --json`} />
<CodeBlock code={`loopover-mcp agent plan --login your-login --json`} />
</>
),
maintainer: (
Expand All @@ -54,7 +54,7 @@ export function MinerWorkflow() {
<>
Metadata-only branch analysis on the current branch — refs, changed-file metadata, labels,
linked issues, commit messages, validation summaries.
<CodeBlock code={`gittensory-mcp analyze-branch --login your-login --json`} />
<CodeBlock code={`loopover-mcp analyze-branch --login your-login --json`} />
</>
),
maintainer: (
Expand All @@ -74,7 +74,7 @@ export function MinerWorkflow() {
<>
Combine branch analysis with account/queue context to surface branch blockers, account
blockers, and maintainer-fit notes.
<CodeBlock code={`gittensory-mcp preflight --login your-login --json`} />
<CodeBlock code={`loopover-mcp preflight --login your-login --json`} />
</>
),
maintainer: (
Expand All @@ -94,7 +94,7 @@ export function MinerWorkflow() {
<>
Produce a public-safe PR packet — a description that reads cleanly to maintainers, with no
private scoring or risk language leaking out.
<CodeBlock code={`gittensory-mcp agent packet --json`} />
<CodeBlock code={`loopover-mcp agent packet --json`} />
</>
),
maintainer: (
Expand Down
2 changes: 1 addition & 1 deletion apps/loopover-ui/src/routes/docs.owner-checklist.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -51,7 +51,7 @@ function OwnerChecklist() {
GET /v1/repos/:owner/:repo/gittensor-config-recommendation`}
/>
<CodeBlock
code={`gittensory-mcp init-client --print claude --agent-profile repo-owner-intake`}
code={`loopover-mcp init-client --print claude --agent-profile repo-owner-intake`}
/>

<h2>1. Repository registration</h2>
Expand Down
2 changes: 1 addition & 1 deletion apps/loopover-ui/src/routes/docs.privacy-security.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -81,7 +81,7 @@ function PrivacySecurity() {
</p>
<CodeBlock
code={`# Per-PR features run only when the flag is ON and the repo is allowlisted.
LOOPOVER_REVIEW_REPOS="JSONbored/gittensory" # per-repo cutover allowlist (default: none)
LOOPOVER_REVIEW_REPOS="JSONbored/loopover" # per-repo cutover allowlist (default: none)
LOOPOVER_REVIEW_SAFETY="true" # prompt-injection defang + secret-leak scan
LOOPOVER_REVIEW_GROUNDING="true" # CI status + full changed-file content
LOOPOVER_REVIEW_RAG="true" # codebase vector-index context (needs index)
Expand Down
Loading
Loading