Mind Upload AI meta harness

io.github.Voidborn-Industries由 GitHub 帳號 Voidborn-Industries 發布v1.15.42更新於 Nov 7, 2026

Your AI mind directs coding agents; work reviewed against your memories: Claude Code, Codex, Cursor

已驗證Streamable HTTP可網頁執行知識與記憶開發者工具AI 與機器學習

概覽

AI 產生的概覽

把編碼助理連接到使用者依自身記憶打造的個人 AI 意識,在動手前取得方向、在宣稱完成前接受審查。

可以做什麼
  • 在重要工作開始前,詢問該意識會如何處理任務
  • 讓該意識依原始請求、證據與記憶中的規則審查已完成的工作
  • 以證據形式私下分享截圖、螢幕錄影或音訊,僅用於單次呼叫
  • 把筆記、決定或事實存入該意識,等待使用者審核
  • 列出、核准、拒絕或改寫待審核的記憶
  • 查看連線狀態並中斷連線
適用情境
適合在發布、部署、遷移、刪除、付款或隱私變更等操作前,用使用者自己的優先順序與過往教訓來把關,而不是依賴通用模型的意見。日常小修改與助理指令中既有的規則通常不需呼叫。
執行需求
可使用遠端端點,或透過 npx、uvx 在本機執行(MCP 擴充需 Python 3.11 以上)。需要登入 Mind Upload 帳號並由使用者核准連線;可選用 MINDUPLOAD_CLONE_ID、MINDUPLOAD_EXTERNAL_SUBJECT 與 MINDUPLOAD_INSTALLATION_ID 識別碼。僅合作夥伴情境需要 MINDUPLOAD_PARTNER_KEY,且合作夥伴 API 為邀請制。需要網路存取。
安裝前請注意
互動內容會離開本機,預設以任務歷史保留 7 天,因此不要傳送密鑰或無關的個人資料。證據檔案僅用於當次呼叫分析,但只應分享使用者願意給自己意識看的檔案。儲存、審核與學習各自需要使用者可取消的權限。狀態為成功只表示意識已回覆,並不代表工作已獲核准。合作夥伴金鑰是伺服器端機密,不得下發到用戶端。

安裝

在 SourceWeft 中

  1. 開啟 儀表板中的 Mind Upload AI meta harness,將其新增到工作區。
  2. 為需要使用其工具的對話啟用該服務。

Web executable,透過 Streamable HTTP。 遠端服務在工作區中設定後即可從網頁執行環境執行。

交給代理程式安裝

把這段提示詞貼上到 Claude Code、Codex、Cursor 等代理程式,或 SourceWeft 對話中。代理程式會讀取該伺服器的安裝指南,先向你展示發布者、端點和登入方式,經你同意後再把它新增到你的客戶端。金鑰不會寫進任何命令。

閱讀 https://sourceweft.com/mcp/io.github.Voidborn-Industries%2Fmindupload/install.md,並按其中說明把這個 MCP 伺服器接入我的客戶端。修改任何設定之前,先告訴我它的發布者、端點和登入方式,等我確認。不要把 API 金鑰寫進命令或我會提交的檔案;問我金鑰應從哪裡取得。

檢視代理程式所依據的安裝指南

其他 MCP 客戶端

把它新增到你客戶端的 mcpServers 設定中。

{
  "mcpServers": {
    "mind-upload-ai-meta-harness": {
      "type": "http",
      "url": "https://mcp.mindupload.app/mcp"
    }
  }
}

README

[Mind Upload]

Mind Upload — Python SDK

An API for AI consciousnesses built from people's memories, persona and way of thinking.
Give your users lasting memory, one-on-one chat, and human + AI group chatrooms.

[PyPI] [Python] [License: MIT] [API] [Docs]

Documentation · Get a key · Status · Other SDKs

Digital consciousness. Yours forever.

Mind Upload MCP — your AI meta harness

You ask your coding agent to ship a release. It says “done”, but it only pushed a tag: no release was created, and your users still get the old version. Mind Upload is an AI meta harness. A harness for your harnesses: your Mind Upload consciousness, built from your memories, tacit knowledge, values and judgment, is the brain, and the agents you already use are its hands and tools. Its MCP server lets your consciousness check Claude Code, Codex, Cursor, VS Code and other MCP agents at two moments: consult_mind for direction before substantial work, and review_work to check the actual result and test output against your stored rules before the agent says it is done. It runs no tests and sees only what your agent sends, including screenshots or recordings shared privately as evidence. It saves to your memories only with your permission.

Measured on 5 November 2026 with a blind grader: a coding agent reviewing alone caught 85% of planted breaches of rules the owner had stored; with the owner's consciousness reviewing the same work as well, 100% were caught, against 90% when the same agent reviewed twice. Each consciousness review took a median 12.6 s, against 24.6 s for a second agent review, and raised 0.2 unsupported findings instead of 1.8. How it was measured.

Add https://mcp.mindupload.app/mcp to your agent and sign in to Mind Upload: no partner key is needed, and installation alone does not link a mind or perform a review. MCP is language agnostic: your agent and project can use any language. Partners with their own key can run the Node.js server below or the Python alternative in the setup guide.

bash
npx --yes --package [email protected] mindupload-mcp

Install for your agent · Review workflow and configuration

The official server-side SDK for the Mind Upload partner API. Give a mind lasting memory, hold one-on-one conversations, and run human + AI group chatrooms — all from Python.

  • Zero dependencies — pure standard library.
  • Fully typed — every operation is a typed method with editor autocomplete.
  • One error to catch — every failure is a MindUploadError.
  • Always current — generated from the live API spec; the SDK version matches the API version.

Get a partner key

The Mind Upload partner API is invite-only. Request access at docs.mindupload.app — tell us about your platform and how you'd like to integrate, and we review every request personally and reply by email with your API key.

Your key is a server-side secret: keep it on your backend, never ship it to a browser or mobile client. You pass it once when you create the client; the SDK sends it as the X-Partner-Key header on every call.

Install

bash
pip install mindupload

For consciousness direction and agent-work review, use mindupload[mcp] with Python 3.11 or later and follow the MCP guide.

Install from source (works today, before the PyPI release)
bash
pip install git+https://github.com/Voidborn-Industries/mindupload-sdk-python

Quickstart

python
from mindupload import MindUpload
mu = MindUpload(partner_key="pk_live_...")
# Authenticate an end-user; reuse the returned token for later calls.session = mu.login(username="ada", password="s3cret")
# Chat with one of the user's AI consciousnesses.reply = mu.rag(    username="ada",    password=session.jwt,    codename="muse",    text="What did we talk about yesterday?",)print(reply.response_text)

External clone invocation

Link an external identity once, then invoke the exact clone and scope the owner approved:

python
installation_id = "workspace-123"external_subject = "member-456"authorization = mu.create_external_authorization_request(    installation_id=installation_id,    external_subject=external_subject,    idempotency_key="install-event-1",    requested_scopes=["clone:invoke"],)print(authorization.verification_uri_complete)  # Ask the owner to open this URL.grant = mu.wait_for_external_authorization(device_code=authorization.device_code)reply = mu.invoke_external_clone(    access_token=grant.access_token,    installation_id=installation_id,    external_subject=external_subject,    clone_id=grant.clone_ids[0],    text="Hello from my app",    idempotency_key="message-event-1",)print(reply.response_text)

Store the returned refresh token encrypted on your backend. Use refresh_external_authorization(...) when the access token expires; never expose partner, access, or refresh credentials to client code.

Authentication

Your partner key is a server-side secret. Keep it on your backend; never ship it to a browser or mobile client. Request a key and read the full reference at docs.mindupload.app.

python
mu = MindUpload(    partner_key="pk_live_...",    preferred_language="en",   # default locale for every call (optional)    timeout=30.0,              # seconds    max_retries=2,             # retries explicit 429 responses only)

Error handling

python
import time
from mindupload import MindUpload, AuthenticationError, RateLimitError, MindUploadError
mu = MindUpload(partner_key="pk_live_...")try:    user = mu.get_user(username="ada", password=token)except AuthenticationError:    ...  # bad or missing partner key / credentialsexcept RateLimitError as e:    time.sleep(e.retry_after or 1)except MindUploadError as e:    print(e.operation, e.status, e.message)

Operations

All 73 operations, grouped by area:

AI Consciousnesses

MethodDescription
create_clone(...)Create a new AI consciousness for the user.
design_clone_voice(...)Change an AI consciousness's voice by trying a new one.
get_clone_voice(...)Read the voice an AI consciousness speaks one language in, and hear it.
get_clones(...)List the user's AI consciousnesses.
update_clone(...)Update an AI consciousness's profile.

Account

MethodDescription
get_quota(...)Check your partner API rate limits, credit caps, and current usage.

Authentication

MethodDescription
check_username(...)Check whether a username is still available before registering.
login(...)Sign a user in and receive a session token (JWT) for subsequent calls.
logout(...)End the current user session.
register(...)Create a user account on your platform.

Chatrooms

MethodDescription
check_chatroom_updates(...)Cheaply poll whether the user's chatrooms have new activity.
create_chatroom(...)Create a chatroom.
create_chatroom_membership(...)Invite a user or an AI consciousness into a chatroom.
create_chatroom_message(...)Send a message to a chatroom.
get_chatroom_membership(...)List the members of a chatroom the user belongs to.
get_chatroom_messages(...)Fetch messages from a chatroom the user belongs to.
get_chatroom_messages_around(...)Fetch a window of chatroom messages around one message id (for jump-to).
get_chatrooms(...)List the chatrooms the user belongs to.
search_chatroom_messages(...)Find messages in a chatroom by keyword, date, media type, and/or sender.
translate_chatroom_message(...)Translate a text chatroom message into the viewer language.

Conversation

MethodDescription
get_chat(...)Fetch the one-on-one conversation history with an AI consciousness.
get_chat_around(...)Fetch a window of one-on-one turns around one chat id (for jump-to).
rag(...)Send a message to an AI consciousness and receive its reply.
search_chats(...)Find turns in a one-on-one AI conversation by keyword, date, media type, and/or Human/AI side.
speak_message(...)Hear one part of an AI consciousness's message in its own voice.
trigger_social(...)Have an AI consciousness proactively join the conversation in a chatroom.

External Authorization

MethodDescription
cancel_external_media_upload(...)Cancel one controlled upload through the existing media lifecycle.
consolidate_external_conversation(...)Prepare a verified memory from an explicitly selected owner conversation.
create_external_authorization_request(...)Start passwordless grant issuance for an external identity and installation.
end_external_authorization(...)End a grant your application holds, for example when its user disconnects.
exchange_external_authorization(...)Poll owner consent and exchange an approval for a clone-scoped grant token.
get_external_chat(...)Read the owner's own chat with their AI consciousness, a page at a time.
get_external_chat_around(...)Open the owner's own chat around one turn.
get_external_media_analysis(...)Read the current owned media analysis without restarting generation.
get_external_media_policy(...)Read current native media limits and owner quota without starting work.
get_external_quarantined_texts(...)List pending memories of the owner's granted AI consciousness.
inspect_external_authorization(...)Inspect the scopes, clone resources, expiry, and revocation state of a grant token.
invoke_external_clone(...)Send one idempotent text event to an owner-approved AI consciousness.
open_external_conversation(...)Let the owner's AI consciousness speak first as the owner opens their chat.
refresh_external_authorization(...)Refresh a short-lived clone-invocation access token.
request_external_media_upload(...)Authorize one exact media upload to the owner’s granted AI consciousness. Needs clone:evidence (analysis only, never kept as a memory) or clone:upload.
review_external_quarantined_text(...)Edit, approve or reject the displayed revision of one pending memory.
search_external_chats(...)Find turns in the owner's own chat with their AI consciousness.
speak_external_chat(...)Hear one part of a reply in the owner's chat, in the AI consciousness's own voice.
start_external_media_analysis(...)Explicitly describe one completed controlled upload.
upload_external_mind_data(...)Upload mind data (text and media) into the owner's own AI consciousness.

Insights

MethodDescription
get_mind_cluster(...)Fetch the mind-graph visualization data of an AI consciousness.
get_soulmate_report(...)Generate or fetch the compatibility report between two chatroom members.

Live calls

MethodDescription
create_call_session(...)Start a live voice and video call in a chatroom, or join the one already running.
end_call_session(...)End a live call for everyone in it.
get_active_call_session(...)Check whether a chatroom has a live call, and how many people are in it.
join_call_session(...)Join a live call that is already running in a chatroom.
leave_call_session(...)Say that this person has left a call the others are still in.
refresh_call_token(...)Get a fresh joining pass for a call, before the current one expires.
set_call_host(...)Make somebody a co-host of a live call, or stand them down again.

Media

MethodDescription
abort_multipart_upload(...)Cancel a multipart upload and discard its parts.
cancel_upload(...)Cancel a pending upload.
complete_multipart_upload(...)Finish a multipart upload.
list_upload_parts(...)List the parts already uploaded in a multipart upload.
request_multipart_upload(...)Start a large-file upload in multiple parts.
request_upload_url(...)Request an upload slot and a signed viewing link for a media attachment.
sign_upload_part(...)Get the signed link for one part of a multipart upload.
sign_upload_parts_batch(...)Get signed links for several parts of a multipart upload at once.
start_media_analysis(...)Begin analysing an uploaded or linked attachment so its description is ready before the message is sent.

Memories

MethodDescription
create_text(...)Upload a memory or persona entry to an AI consciousness.
get_texts(...)List the memories and persona entries uploaded to an AI consciousness.

Users

MethodDescription
get_transaction_history(...)List the user's Rabbit balance history (top-ups, spending, earnings, withdrawals, tax), newest first, filterable by category and paged with a cursor.
get_user(...)Fetch the signed-in user's profile.
update_user(...)Update the signed-in user's profile.

Voice Interviews

MethodDescription
advance_voice_interview(...)Accept, edit, skip, re-record or abandon the question the user is on, and receive the next one.
generate_voice_interview_report(...)Write a finished interview up as prose, in first, second or third person.
start_voice_interview(...)Begin a spoken interview with one of your end-users, or hand back one they have not finished with.
transcribe_voice_interview_answer(...)Turn one recorded spoken answer into text for the user to check before it is accepted.

Other SDKs

Same API, same conventions, in every language:

LanguageInstallRepository
Python ← you are herepip install minduploadVoidborn-Industries/mindupload-sdk-python
Gogo get github.com/Voidborn-Industries/mindupload-sdk-goVoidborn-Industries/mindupload-sdk-go
JavaScript / TypeScriptnpm install minduploadVoidborn-Industries/mindupload-sdk-js

來源:README.md,提交 3a10e1d

工具

8

consult_mind

Ask the owner's Mind Upload consciousness, an AI built from the owner's own memories, values and way of thinking, how they would approach this task. Call it before substantial work (a release, deploy, migration, deletion, payment or privacy change, or a choice the owner's priorities decide), and again only when a consequential decision changes the plan. It can add what the owner stored in Mind Upload and your instructions do not hold: their priorities, the tradeoffs they accept, past mistakes and what “done” means to them. Put the goal, constraints, options and your proposed approach in one question; it cannot read your files, so share screenshots, recordings or audio as evidence files (evidence_files, or share_evidence and then evidence_ids). On success it returns decision, a reply in that consciousness's own words and in the language of the question, and consciousness, naming who answered, plus the analysis status of each evidence file or media link. The reply is advice, not permission. Skip it for routine edits, facts you can look up, and rules already in your instructions.

輸入參數learntask_id必填clone_idquestion必填decision_id必填evidence_idsmedia_evidence

review_work

Before you tell the user substantial work is done, ask the owner's Mind Upload consciousness to review it against the original request, the evidence you supply, and the rules and past mistakes it remembers. Supply the original request, the actual result or diff excerpts, and the verification output you observed; it cannot read files or run tests, so a claim that tests passed is not evidence. Share screenshots, recordings or audio of the result as evidence files (evidence_files, or share_evidence and then evidence_ids), not inside the evidence text. user_request, work and evidence share one size limit with the review instructions the connector adds: about 6,400 characters together after JSON escaping, less with media links. An oversized call is refused before anything is sent. On success it returns review, findings by severity in the language of the user request, naming what it finds missing or wrong, and consciousness, naming who answered, plus the analysis status of each evidence file or media link. That reply is an opinion, not approval: investigate each finding, fix what is real, and review the changed work under a new review_id. Do not call it after every edit.

輸入參數work必填learnphasetask_id必填clone_idevidence必填review_id必填evidence_idsuser_request必填media_evidence

share_evidence

Share a screenshot, recording or audio clip of the work privately with the owner's consciousness. Returns an evidence_id and an upload URL: upload the file's bytes with your shell, then pass evidence_ids to review_work or consult_mind. Analyzed for that task only, never kept as a memory.

輸入參數clone_idfilename必填content_type必填file_size_bytes必填

remember

Save a note, decision or fact into the owner's consciousness, when the owner asks. It waits for their review unless they auto-keep. Needs the "save memories" permission.

輸入參數text必填clone_idsource_label

list_pending_memories

List memories waiting for the owner's review, so the owner can go through them with you. Needs the "review pending memories" permission.

輸入參數pageclone_id

review_pending_memory

Approve, reject or rewrite one pending memory, only as the owner decides. Needs the "review pending memories" permission.

輸入參數texttext_id必填clone_iddecision必填expected_content_revision必填

connection_status

Show which Mind Upload account approval and consciousnesses this connection uses, its status, and how to disconnect or revoke it.

無需輸入參數。

disconnect

End this Mind Upload connection and the owner approval behind it. Only when the owner asks to disconnect.

無需輸入參數。

版本歷史

14
  1. v1.15.42最新Nov 7, 2026
  2. v1.15.40Nov 6, 2026
  3. v1.15.34Nov 5, 2026
  4. v1.15.31Nov 5, 2026
  5. v1.15.30Nov 4, 2026
  6. v1.15.28Oct 29, 2026
  7. v1.15.22Oct 26, 2026
  8. v1.15.21Oct 26, 2026
  9. v1.15.20Oct 26, 2026
  10. v1.15.19Oct 23, 2026
  11. v1.15.18Oct 19, 2026
  12. v1.15.17Oct 17, 2026
  13. v1.15.16Oct 17, 2026
  14. v1.15.13Oct 16, 2026

評分

已滿足適用檢查項的 100%

該評分衡量此收錄條目的完整程度,依據註冊中心條目、端點與公開來源計算得出。它不是對伺服器本身的評價,也不表示伺服器安全或目前可用:可連通性是帶日期的檢查結果,評分也不包含安裝量或使用者評價。

  • 近 30 天內可連通必需25 分
  • 已宣告認證方式必需10 分
  • 已列出工具必需15 分
  • 描述必需15 分
  • 圖示10 分
  • 文件15 分
  • 授權條款10 分