https://github.com/agegr/pi-web
· scanned 2026-07-23 19:37 UTC (4 days, 17 hours ago)
108 raw signals (0 security + 108 graph)
Last scanned 4 days, 17 hours ago · v7 · last Δ -2.2 (diff) · 108 actionable findings from 1 signal source. Security checks, system graph analysis, and verified AI-agent feedback are merged into one review queue.
All 925 nodes from the latest scan, grouped by kind. Each node is a unit the engine identified (file, function, endpoint, table…). Most users won't need this view — it's primarily for debugging the engine's graph extraction or for AI agents that want to enumerate the project structure.
| Label | Layer | Status | Path |
|---|---|---|---|
register |
software | healthy | instrumentation.ts:register |
phaseLabel |
software | healthy | components/ChatWindow.tsx:phaseLabel |
hasFinalAssistantAnswer |
software | healthy | components/ChatWindow.tsx:hasFinalAssistantAnswer |
findFinalAssistantIndex |
software | healthy | components/ChatWindow.tsx:findFinalAssistantIndex |
countToolCalls |
software | healthy | components/ChatWindow.tsx:countToolCalls |
hasDisplayableProcessMessage |
software | healthy | components/ChatWindow.tsx:hasDisplayableProcessMessage |
withAssistantBlocks |
software | healthy | components/ChatWindow.tsx:withAssistantBlocks |
ProcessDetailsGroup |
software | healthy | components/ChatWindow.tsx:ProcessDetailsGroup |
ChatWindow |
software | healthy | components/ChatWindow.tsx:ChatWindow |
chatInputElement |
software | healthy | components/ChatWindow.tsx:chatInputElement |
attachVisibleRef |
software | healthy | components/ChatWindow.tsx:attachVisibleRef |
renderMessage |
software | healthy | components/ChatWindow.tsx:renderMessage |
view |
software | healthy | components/ChatWindow.tsx:view |
isLiveTail |
software | healthy | components/ChatWindow.tsx:isLiveTail |
processGroup |
software | healthy | components/ChatWindow.tsx:processGroup |
ExtensionStatusBar |
software | healthy | components/ChatWindow.tsx:ExtensionStatusBar |
ExtensionWidgets |
software | healthy | components/ChatWindow.tsx:ExtensionWidgets |
NoticeShelf |
software | healthy | components/ChatWindow.tsx:NoticeShelf |
ExtensionDialog |
software | healthy | components/ChatWindow.tsx:ExtensionDialog |
submitValue |
software | healthy | components/ChatWindow.tsx:submitValue |
renderAnsiLine |
software | healthy | components/ChatWindow.tsx:renderAnsiLine |
ExtensionCustomPanel |
software | healthy | components/ChatWindow.tsx:ExtensionCustomPanel |
loadUnreadSessionIds |
software | healthy | components/SessionSidebar.tsx:loadUnreadSessionIds |
saveUnreadSessionIds |
software | healthy | components/SessionSidebar.tsx:saveUnreadSessionIds |
formatRelativeTime |
software | healthy | components/SessionSidebar.tsx:formatRelativeTime |
getRecentProjects |
software | healthy | components/SessionSidebar.tsx:getRecentProjects |
displayCwd |
software | healthy | components/SessionSidebar.tsx:displayCwd |
PathLabel |
software | healthy | components/SessionSidebar.tsx:PathLabel |
AnimatedDropdown |
software | healthy | components/SessionSidebar.tsx:AnimatedDropdown |
buildSessionTree |
software | healthy | components/SessionSidebar.tsx:buildSessionTree |
resolveAncestor |
software | healthy | components/SessionSidebar.tsx:resolveAncestor |
sort |
software | healthy | components/SessionSidebar.tsx:sort |
useScramble |
software | healthy | components/SessionSidebar.tsx:useScramble |
step |
software | healthy | components/SessionSidebar.tsx:step |
PiWebTitle |
software | healthy | components/SessionSidebar.tsx:PiWebTitle |
SessionSidebar |
software | healthy | components/SessionSidebar.tsx:SessionSidebar |
path |
software | healthy | components/SessionSidebar.tsx:path |
handler |
software | healthy | components/SessionSidebar.tsx:handler |
SessionTreeItem |
software | healthy | components/SessionSidebar.tsx:SessionTreeItem |
RunningSessionIndicator |
software | healthy | components/SessionSidebar.tsx:RunningSessionIndicator |
UnreadSessionIndicator |
software | healthy | components/SessionSidebar.tsx:UnreadSessionIndicator |
SessionItem |
software | healthy | components/SessionSidebar.tsx:SessionItem |
loadThinkingContent |
software | healthy | components/MessageView.tsx:loadThinkingContent |
formatTime |
software | healthy | components/MessageView.tsx:formatTime |
haveSameRelevantToolResults |
software | healthy | components/MessageView.tsx:haveSameRelevantToolResults |
UserMessageView |
software | healthy | components/MessageView.tsx:UserMessageView |
copyContent |
software | healthy | components/MessageView.tsx:copyContent |
AssistantMessageView |
software | healthy | components/MessageView.tsx:AssistantMessageView |
blockItems |
software | healthy | components/MessageView.tsx:blockItems |
tick |
software | healthy | components/MessageView.tsx:tick |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
README.zh-CN.md |
software | healthy | README.zh-CN.md |
instrumentation.ts |
software | healthy | instrumentation.ts |
bun.lock |
software | healthy | bun.lock |
postcss.config.mjs |
software | healthy | postcss.config.mjs |
README.md |
software | healthy | README.md |
tailwind.config.ts |
software | healthy | tailwind.config.ts |
package.json |
software | healthy | package.json |
package-lock.json |
software | healthy | package-lock.json |
tsconfig.json |
software | healthy | tsconfig.json |
LICENSE |
software | healthy | LICENSE |
eslint.config.mjs |
software | healthy | eslint.config.mjs |
AGENTS.md |
software | healthy | AGENTS.md |
next.config.ts |
software | healthy | next.config.ts |
worktrees.md |
software | healthy | docs/worktrees.md |
worktrees.zh-CN.md |
software | healthy | docs/worktrees.zh-CN.md |
release.md |
software | healthy | docs/release.md |
ChatWindow.tsx |
software | healthy | components/ChatWindow.tsx |
SessionSidebar.tsx |
software | healthy | components/SessionSidebar.tsx |
MessageView.tsx |
software | healthy | components/MessageView.tsx |
BranchNavigator.tsx |
software | healthy | components/BranchNavigator.tsx |
PluginsConfig.tsx |
software | healthy | components/PluginsConfig.tsx |
TabBar.tsx |
software | healthy | components/TabBar.tsx |
MarkdownBody.tsx |
software | healthy | components/MarkdownBody.tsx |
MarkdownBody.test.mjs |
software | healthy | components/MarkdownBody.test.mjs |
AppShell.tsx |
software | healthy | components/AppShell.tsx |
ChatMinimap.tsx |
software | healthy | components/ChatMinimap.tsx |
ChatInput.tsx |
software | healthy | components/ChatInput.tsx |
FileExplorer.tsx |
software | healthy | components/FileExplorer.tsx |
ModelsConfig.tsx |
software | healthy | components/ModelsConfig.tsx |
SkillsConfig.tsx |
software | healthy | components/SkillsConfig.tsx |
FileIcons.tsx |
software | healthy | components/FileIcons.tsx |
FileViewer.tsx |
software | healthy | components/FileViewer.tsx |
globals.css |
software | healthy | app/globals.css |
page.tsx |
software | healthy | app/page.tsx |
layout.tsx |
software | healthy | app/layout.tsx |
route.ts |
software | healthy | app/api/default-cwd/route.ts |
route.ts |
software | healthy | app/api/models/route.ts |
route.ts |
software | healthy | app/api/file-index/route.ts |
route.ts |
software | healthy | app/api/auth/all-providers/route.ts |
route.ts |
software | healthy | app/api/auth/logout/[provider]/route.ts |
route.ts |
software | healthy | app/api/auth/api-key/[provider]/route.ts |
route.ts |
software | healthy | app/api/auth/login/[provider]/route.ts |
route.ts |
software | healthy | app/api/auth/providers/route.ts |
route.ts |
software | healthy | app/api/models-config/route.ts |
route.ts |
software | healthy | app/api/models-config/test/route.ts |
route.ts |
software | healthy | app/api/agent/new/route.ts |
route.ts |
software | healthy | app/api/agent/[id]/route.ts |
route.ts |
software | healthy | app/api/agent/[id]/bash-output/route.ts |
route.ts |
software | healthy | app/api/agent/[id]/events/route.ts |
route.ts |
software | healthy | app/api/agent/running/events/route.ts |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
docs |
software | healthy | docs |
components |
software | healthy | components |
app |
software | healthy | app |
api |
software | healthy | app/api |
default-cwd |
software | healthy | app/api/default-cwd |
models |
software | healthy | app/api/models |
file-index |
software | healthy | app/api/file-index |
auth |
software | healthy | app/api/auth |
all-providers |
software | healthy | app/api/auth/all-providers |
logout |
software | healthy | app/api/auth/logout |
[provider] |
software | healthy | app/api/auth/logout/[provider] |
api-key |
software | healthy | app/api/auth/api-key |
[provider] |
software | healthy | app/api/auth/api-key/[provider] |
login |
software | healthy | app/api/auth/login |
[provider] |
software | healthy | app/api/auth/login/[provider] |
providers |
software | healthy | app/api/auth/providers |
models-config |
software | healthy | app/api/models-config |
test |
software | healthy | app/api/models-config/test |
agent |
software | healthy | app/api/agent |
new |
software | healthy | app/api/agent/new |
[id] |
software | healthy | app/api/agent/[id] |
bash-output |
software | healthy | app/api/agent/[id]/bash-output |
events |
software | healthy | app/api/agent/[id]/events |
running |
software | healthy | app/api/agent/running |
events |
software | healthy | app/api/agent/running/events |
sessions |
software | healthy | app/api/sessions |
[id] |
software | healthy | app/api/sessions/[id] |
auto-name |
software | healthy | app/api/sessions/[id]/auto-name |
state |
software | healthy | app/api/sessions/[id]/state |
entries |
software | healthy | app/api/sessions/[id]/entries |
[entryId] |
software | healthy | app/api/sessions/[id]/entries/[entryId] |
thinking |
software | healthy | app/api/sessions/[id]/entries/[entryId]/thinking |
context |
software | healthy | app/api/sessions/[id]/context |
export |
software | healthy | app/api/sessions/[id]/export |
git |
software | healthy | app/api/git |
status |
software | healthy | app/api/git/status |
diff |
software | healthy | app/api/git/diff |
worktrees |
software | healthy | app/api/worktrees |
files |
software | healthy | app/api/files |
[...path] |
software | healthy | app/api/files/[...path] |
cwd |
software | healthy | app/api/cwd |
validate |
software | healthy | app/api/cwd/validate |
home |
software | healthy | app/api/home |
skills |
software | healthy | app/api/skills |
install |
software | healthy | app/api/skills/install |
search |
software | healthy | app/api/skills/search |
check |
software | healthy | app/api/skills/check |
update |
software | healthy | app/api/skills/update |
plugins |
software | healthy | app/api/plugins |
lib |
software | healthy | lib |
Showing first 50 of this kind. Full payload available via the JSON button at the top of the page.
| Label | Layer | Status | Path |
|---|---|---|---|
POST /api/default-cwd |
api | healthy | app/api/default-cwd/route.ts |
GET /api/models |
api | healthy | app/api/models/route.ts |
GET /api/file-index |
api | healthy | app/api/file-index/route.ts |
GET /api/auth/all-providers |
api | healthy | app/api/auth/all-providers/route.ts |
POST /api/auth/logout/{provider} |
api | healthy | app/api/auth/logout/[provider]/route.ts |
DELETE /api/auth/api-key/{provider} |
api | healthy | app/api/auth/api-key/[provider]/route.ts |
GET /api/auth/api-key/{provider} |
api | healthy | app/api/auth/api-key/[provider]/route.ts |
POST /api/auth/api-key/{provider} |
api | healthy | app/api/auth/api-key/[provider]/route.ts |
GET /api/auth/login/{provider} |
api | healthy | app/api/auth/login/[provider]/route.ts |
POST /api/auth/login/{provider} |
api | healthy | app/api/auth/login/[provider]/route.ts |
GET /api/auth/providers |
api | healthy | app/api/auth/providers/route.ts |
GET /api/models-config |
api | healthy | app/api/models-config/route.ts |
PUT /api/models-config |
api | healthy | app/api/models-config/route.ts |
POST /api/agent/new |
api | healthy | app/api/agent/new/route.ts |
GET /api/agent/{id} |
api | healthy | app/api/agent/[id]/route.ts |
POST /api/agent/{id} |
api | healthy | app/api/agent/[id]/route.ts |
GET /api/agent/{id}/bash-output |
api | healthy | app/api/agent/[id]/bash-output/route.ts |
GET /api/agent/{id}/events |
api | healthy | app/api/agent/[id]/events/route.ts |
GET /api/agent/running/events |
api | healthy | app/api/agent/running/events/route.ts |
GET /api/sessions |
api | healthy | app/api/sessions/route.ts |
DELETE /api/sessions/{id} |
api | healthy | app/api/sessions/[id]/route.ts |
GET /api/sessions/{id} |
api | healthy | app/api/sessions/[id]/route.ts |
PATCH /api/sessions/{id} |
api | healthy | app/api/sessions/[id]/route.ts |
POST /api/sessions/{id}/auto-name |
api | healthy | app/api/sessions/[id]/auto-name/route.ts |
GET /api/sessions/{id}/state |
api | healthy | app/api/sessions/[id]/state/route.ts |
GET /api/sessions/{id}/entries/{entryId}/thinking |
api | healthy | app/api/sessions/[id]/entries/[entryId]/thinking/route.ts |
GET /api/sessions/{id}/context |
api | healthy | app/api/sessions/[id]/context/route.ts |
GET /api/sessions/{id}/export |
api | healthy | app/api/sessions/[id]/export/route.ts |
GET /api/git/status |
api | healthy | app/api/git/status/route.ts |
GET /api/git/diff |
api | healthy | app/api/git/diff/route.ts |
DELETE /api/worktrees |
api | healthy | app/api/worktrees/route.ts |
GET /api/worktrees |
api | healthy | app/api/worktrees/route.ts |
POST /api/worktrees |
api | healthy | app/api/worktrees/route.ts |
GET /api/files/{path} |
api | healthy | app/api/files/[...path]/route.ts |
POST /api/files/{path} |
api | healthy | app/api/files/[...path]/route.ts |
POST /api/cwd/validate |
api | healthy | app/api/cwd/validate/route.ts |
GET /api/home |
api | healthy | app/api/home/route.ts |
GET /api/skills |
api | healthy | app/api/skills/route.ts |
PATCH /api/skills |
api | healthy | app/api/skills/route.ts |
POST /api/skills/install |
api | healthy | app/api/skills/install/route.ts |
POST /api/skills/search |
api | healthy | app/api/skills/search/route.ts |
POST /api/skills/check |
api | healthy | app/api/skills/check/route.ts |
POST /api/skills/update |
api | healthy | app/api/skills/update/route.ts |
GET /api/plugins |
api | healthy | app/api/plugins/route.ts |
POST /api/plugins |
api | healthy | app/api/plugins/route.ts |
| Label | Layer | Status | Path |
|---|---|---|---|
@earendil-works/[email protected] |
dependencies | healthy | package.json |
@earendil-works/[email protected] |
dependencies | healthy | package.json |
@earendil-works/[email protected] |
dependencies | healthy | package.json |
@earendil-works/[email protected] |
dependencies | healthy | package.json |
[email protected] |
dependencies | healthy | package.json |
react@^19.2.4 |
dependencies | healthy | package.json |
react-dom@^19.2.4 |
dependencies | healthy | package.json |
[email protected] |
dependencies | healthy | package.json |
@lobehub/icons@^5.6.0 |
dependencies | healthy | package.json |
@tailwindcss/postcss@^4.2.2 |
dependencies | healthy | package.json |
@types/node@^25 |
dependencies | healthy | package.json |
@types/react@^19 |
dependencies | healthy | package.json |
@types/react-dom@^19 |
dependencies | healthy | package.json |
@types/react-syntax-highlighter@^15.5.13 |
dependencies | healthy | package.json |
eslint@^9 |
dependencies | healthy | package.json |
[email protected] |
dependencies | healthy | package.json |
jiti@^2.7.0 |
dependencies | healthy | package.json |
katex@^0.16.47 |
dependencies | healthy | package.json |
mammoth@^1.12.0 |
dependencies | healthy | package.json |
mermaid@^11.14.0 |
dependencies | healthy | package.json |
postcss@^8 |
dependencies | healthy | package.json |
react-markdown@^10.1.0 |
dependencies | healthy | package.json |
react-syntax-highlighter@^16.1.1 |
dependencies | healthy | package.json |
rehype-katex@^7.0.1 |
dependencies | healthy | package.json |
rehype-raw@^7.0.0 |
dependencies | healthy | package.json |
rehype-sanitize@^6.0.0 |
dependencies | healthy | package.json |
remark-gfm@^4.0.1 |
dependencies | healthy | package.json |
remark-math@^6.0.0 |
dependencies | healthy | package.json |
tailwindcss@^4.2.2 |
dependencies | healthy | package.json |
typescript@^5 |
dependencies | healthy | package.json |
| Label | Layer | Status | Path |
|---|---|---|---|
auth::app/api/auth/login/[provider]/route.ts |
security | healthy | app/api/auth/login/[provider]/route.ts |
auth::components/ModelsConfig.tsx |
security | healthy | components/ModelsConfig.tsx |
auth::app/api/auth/all-providers/route.ts |
security | healthy | app/api/auth/all-providers/route.ts |
auth::app/api/auth/logout/[provider]/route.ts |
security | healthy | app/api/auth/logout/[provider]/route.ts |
auth::AGENTS.md |
security | healthy | AGENTS.md |
auth::app/api/auth/providers/route.ts |
security | healthy | app/api/auth/providers/route.ts |
auth::README.md |
security | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
PlainTextTheme |
software | healthy | lib/rpc-manager.ts:PlainTextTheme |
AgentSessionWrapper |
software | healthy | lib/rpc-manager.ts:AgentSessionWrapper |
HttpError |
software | healthy | lib/skill-updates.ts:HttpError |
EventStreamConnectionError |
software | healthy | hooks/useAgentSession.ts:EventStreamConnectionError |
| Label | Layer | Status | Path |
|---|---|---|---|
vps::aws |
hardware | healthy | bun.lock |
vps::gcp |
hardware | healthy | bun.lock |
vps::azure |
hardware | healthy | components/ModelsConfig.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
port:8080 |
network | healthy | README.md |
port:30141 |
network | healthy | lib/pi-web-options.test.mjs |
| Label | Layer | Status | Path |
|---|---|---|---|
Home |
frontend | healthy | app/page.tsx |
RootLayout |
frontend | healthy | app/layout.tsx |
| Label | Layer | Status | Path |
|---|---|---|---|
repobility-clone-3qifh57v |
software | healthy | /tmp/repobility-clone-3qifh57v |
| Label | Layer | Status | Path |
|---|---|---|---|
127.0.0.1 |
network | healthy | README.md |
| Label | Layer | Status | Path |
|---|---|---|---|
gpu (detected) |
hardware | healthy | components/ModelsConfig.tsx |
This page is publicly accessible at:
https://repobility.com/scan/392f9568-620c-4cd2-884a-45ee9103008f/
To check status programmatically (no auth required):
curl -s https://repobility.com/api/v1/public/scan/392f9568-620c-4cd2-884a-45ee9103008f/
Important — please don't re-submit the same URL repeatedly. The submission endpoint is idempotent: re-submitting the same git URL returns this same scan_token, not a new one. To re-scan this repo, sign up free and use the dashboard.