beclab/olares

olares-doctor

Runtime diagnosis for Olares apps and the system via olares-cli — find the root cause when an app won't install or start, crashes, cannot pull an image, is running but unreachable, or is slow; includes doctor images and thirdleveldomain.

Quelltext ansehen

Verwendung

  1. Installationsbefehl kopieren und das Quellpaket vor der Installation in der eigenen Agentenumgebung prüfen.
  2. Benötigte Werkzeuge, Zugangsdaten und Hosts im Original prüfen.
  3. Eingabe und gewünschtes Ergebnis beschreiben und die Ausgabe mit den Quellen abgleichen.
npx skills add https://github.com/beclab/olares --skill olares-doctor

Vor dem Start

  • Die Installation umfasst weder Modellabo noch API-Kontingent oder Dateizugriffsrechte.
  • Sterne und Installationen zeigen Aktivität, keine unabhängige Qualitäts- oder Sicherheitsprüfung.
Originales Skill-Dokument

Aus dem Quell-Repository gerendert; Überschriften, Beispiele, Code, Tabellen, Links und Bilder bleiben erhalten.

doctor (runtime diagnosis)

Shared front door: load `../olares-shared/SKILL.md` for suite routing, active-profile selection, platform entry points, and the auth proceed/stop gate. Load its auth reference only when login, profile switching, token storage, or auth recovery is actually needed.

This skill is a thin diagnostic router over Market, Cluster, and Dashboard. Load the shared application-state model when interpreting lifecycle states, TTLs, serialized downloads, or running. Use olares-cli doctor <verb> --help for syntax.

When to use

  • An install/upgrade is stuck or never reaches running; an app won't start.
  • An app crashes / restarts repeatedly (CrashLoopBackOff, exit codes, config errors).
  • An image won't pull (ImagePullBackOff / ErrImagePull / wrong arch), or you want to find unused local images.
  • An app is running but its entrance is unreachable / errors / times out.
  • The system or an app is slow, or a GPU/resource binding is rejected (node-pressure).

Both catalog apps (installed via `market`) and your own dev apps (deployed via `chart`) route runtime failures here. Once the root cause is found, the fix for a dev app you authored is usually a chart edit — hand back to `../olares-chart/SKILL.md`.

Mental model: doctor answers "why is this broken and what do I do next?" Diagnosis is read-only by default; the only mutation is the explicitly approved thirdleveldomain --force-dedupe repair. The four-skill develop->deploy->debug combo is chart + market + olares-shared + doctor.

Symptom routing

SymptomReference
Install/upgrade stuck; never reaches running; sits in pending / downloading / installing / initializing; a fresh install ended in stoppedreferences/olares-doctor-app-stuck.md
App crashes / restarts (CrashLoopBackOff, non-zero exit, CreateContainerConfigError, permission errors)references/olares-doctor-app-crash.md
Image won't pull (ImagePullBackOff / ErrImagePull / InvalidImageName / arch mismatch); finding unused local imagesreferences/olares-doctor-image.md
App is running but the entrance is unreachable / 5xx / times out / blankreferences/olares-doctor-running-unhealthy.md
System or app slow; resource pressure; GPU/compute binding rejected (node-pressure)references/olares-doctor-resources.md

A model that is configured but does not answer is diagnosed one layer up first: `olares-router` separates the gateway, its access control and the model application's own download/engine state from the pod-level failures here, and routes back when the cause is below the application.

First, rule out the normal queue. Before declaring an install stuck, check whether another app is downloading — app-service runs one download at a time, so a pending row is often just queuing (see the appstate reference and the app-stuck reference).

Verb index

CommandPurposeRead when triggered
imagesFull local image inventory annotated with workload references; unused candidatesimage diagnosis
thirdleveldomainAudit duplicate/reserved third-level domains; optional repairdomain audit and repair

How doctor gathers evidence (orchestration, not ownership)

Correlate evidence by time and object ownership. A Market timeout is not failure; running proves only entrance TCP reachability; a fresh install can settle at stopped after scheduling failure without a *Failed lifecycle state.

Safety and escalation

  • Diagnosis is read-only by default. Do not restart, delete, scale, cancel, prune, or edit a chart as an automatic diagnostic step.
  • thirdleveldomain --force-dedupe mutates Application resources. Show the proposed changes and obtain explicit approval first.
  • An unused-image report is evidence, not authorization to remove images.
  • System namespace evidence commonly requires admin visibility. On 403/404, use the app's own evidence and report the missing visibility; do not switch identities without approval.
  • Stop when the app/user/namespace is ambiguous, required logs need a higher role, or the fix crosses into chart editing, lifecycle mutation, or host administration.

Verwandte Aufgaben

aus demselben Repository

Weitere Skills

Alle Skills
beclab
Community

olares-chart

Olares app packaging and chart authoring via olares-cli chart — port a repo, docker-compose, or generic Helm chart; build/push the image; author, lint, package, and deploy an OlaresManifest; wire storage, middleware, entrances, env, and GPU; edit the chart after diagnosis. Runtime failure diagnosis is olares-doctor; public Market submission is olares-publish.

Installationen
2
GitHub Stars
5311
Aktualisiert
20. Okt.
beclab
Community

olares-cluster

Olares ControlHub K8s runtime view via olares-cli cluster — inspect pods, containers, workloads, logs, jobs, cronjobs, namespaces, nodes, and middleware; exec, scale, restart, or delete K8s objects. Use for raw runtime objects and logs, not app lifecycle (market), resource metrics (dashboard), or host install.

Installationen
2
GitHub Stars
5311
Aktualisiert
20. Okt.
beclab
Community

olares-dashboard

Olares Dashboard via olares-cli dashboard — CPU, memory, disk, network, pod counts, fan, GPU, application/resource rankings, JSON envelopes, and --watch. Use for Dashboard metrics, overview, resource usage, and Olares One fan; not for pod logs or K8s object inspection (olares-cluster).

Installationen
2
GitHub Stars
5311
Aktualisiert
20. Okt.
beclab
Community

olares-files

Olares Files via olares-cli files — browse known paths; upload or download file bytes; edit, share, mount SMB/NFS, compress/extract archives, and manage Seafile sync across Drive/cache/external/cloud. Use for Olares Files and LarePass Files operations, not URL/yt-dlp/torrent download tasks (olares-knowledge).

Installationen
2
GitHub Stars
5311
Aktualisiert
20. Okt.