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 分