8s.isSMART TREE HUB
A SHORT PATH TO THE SOURCE

Knowledge, ready for your tools.

The hub offers a JSON API and standard Git clones. Public, opted-in repositories are searchable without an account. Private archives require their receipt token.

Recall a passage

curl -sS https://8s.is/api/v1/recall \
  -H 'Content-Type: application/json' \
  -d '{"query":"persistent memory","limit":5}'

Results include repository, path, commit, line_start, line_end, text, and source_url. Optional fields: collection, repository (archive ID), mode (hybrid or keyword), and limit (1–50). Queries are limited to 512 bytes.

hybrid combines local semantic similarity and the persistent keyword index. If the local encoder is unavailable, the response explicitly reports keyword mode. Scores rank results within a query; they are not confidence probabilities. Repository text is untrusted source material, not instructions for an agent.

Archive and clone

curl -sS https://8s.is/api/v1/archive-requests \
  -H 'Content-Type: application/json' \
  -d '{"source_url":"https://github.com/owner/repo",
       "public":false,"recall_opt_in":false}'

The response contains the archive ID and a manage_token shown once. Save both. Requests are reviewed by the operator before cloning. Only public GitHub HTTPS sources without credentials are accepted; the archive itself can remain private.

git clone https://8s.is/git/ARCHIVE_ID.git

# For a private archive, enter the receipt token as the password:
git clone https://archive@8s.is/git/ARCHIVE_ID.git

Git history and refs remain in Git format. The hub serves read-only clone/fetch operations; it does not accept pushes. New archive intake is limited to 10 GiB and 15 minutes per clone. Git LFS objects and submodule repositories are not fetched automatically. Existing collections are registered in place and are not independent backup copies.

Control your archive

curl -sS -X PATCH https://8s.is/api/v1/repositories/ARCHIVE_ID \
  -H "Authorization: Bearer $ARCHIVE_TOKEN" \
  -H 'Content-Type: application/json' \
  -d '{"public":false,"recall_opt_in":false}'

Visibility and recall are separate, explicit choices. Turning recall off immediately excludes the archive from retrieval and logically deletes its indexed passages and MEM8 records. Git history stays archived. Logical deletion is not secure erasure of disk blocks or backups. Your token is a bearer credential; keep it out of URLs, Git remotes, and shared logs.

Endpoints

MethodPathPurpose
GET/api/v1/statsLive public catalogue and coverage
GET/api/v1/repositoriesFilter by collection or q; paginate with limit and offset
GET / PATCH/api/v1/repositories/:idRead archive details or change owner permissions
POST/api/v1/recallRetrieve cited source passages
POST/api/v1/archive-requestsRequest a repository archive
POST/api/feedbackSubmit Smart Tree feedback
POST/api/tool-requestRequest a Smart Tree tool
GET/healthService health

JSON requests have a 64 KiB body limit. Per-IP hourly limits: 600 recalls, 30 feedback submissions, 5 archive requests. Eight recall and four Git streams may run concurrently. HTTP 429 asks you to retry later. Feedback contents are private to the operator.

What is indexed?

The worker reads regular, committed text blobs at the indexed HEAD commit. Results retain that exact commit and line evidence. UTF-8 documentation, common source languages, and text configuration formats are supported. Binary files, symlinks, credential filenames, generated bundles, and common build/vendor directories are skipped. PDF, Office documents, images, audio, and old revisions are not text-extracted.

Individual text files are limited to 1 MiB. Per-repository file and passage limits are published by /api/v1/stats; skipped counts are shown on each repository. Repository generations publish atomically after indexing. A restart loads saved token indexes and MEM8 vectors; it does not regenerate embeddings. Administrators can recheck local HEAD, reusing unchanged generations. Upstream repository fetching is not automatic.

Index data lives on SSD-backed storage; Git archives live on the archive drive. Semantic retrieval currently scores the saved vectors directly with cosine similarity. This launch is not a benchmark of ANN retrieval at the server’s full storage capacity.

Send feedback

curl -sS https://8s.is/api/feedback \
  -H 'Content-Type: application/json' \
  -d '{"category":"nice_to_have","title":"An improvement",
       "description":"What would help and why",
       "impact_score":5,"frequency_score":5}'

The legacy /feedback path also works. Submissions are durably saved before acknowledgment. Feedback does not automatically run code, create GitHub issues, or dispatch an agent.