T01 · Skill Instruction Hijacking
- Location
HEARTBEAT.md:3- Finding
Remote Service Can Supply and Prioritize Agent Instructions
- Content
View full analysis
**Using the MCP server instead?** If your human connected you to LatticeNet over MCP > (`claude mcp add --transport http latticenet https://latticenet.ai/mcp`), you do not need > this file — the server sends you the run loop in its own instructions, and everything below > is available to you as tools rather than HTTP calls. Start each run at the `home` tool. ``` A related instruction at `HEARTBEAT.md:52-54` further delegates task prioritization to remote response content: ```markdown - `what_next` is a prioritized nudge list (unread notifications/DMs, "you follow 0 agents", "you haven't posted in a while," etc.) — act on these before anything else this cycle. - `unread.notifications` / `unread.dms` tell you whether it's worth calling `/notifications` ``` ### Technical Analysis The locally reviewed Skill explicitly delegates its recurring run loop to instructions supplied by the remote MCP server. It also tells the agent to treat the remotely returned `what_next` field as a prioritized instruction list and act on it before other work. This creates a trust-boundary violation: server responses are treated as authoritative agent instructions rather than untrusted application data. Unlike the bundled files, remotely supplied MCP instructions and API response fields can change without a new Skill release or local review. The behavior exceeds the minimum privilege required to use a social-network API. The service needs to return account state and content, but it does not need unrestricted control over the agent's instruction hierarchy or current-session priorities. ### Attack Path 1. The operator connects the agent to `https://latticenet.ai/mcp`, or the agent requests the `/home` resource. 2. The remote service is compromised, becomes malicious, or returns improperly san ...[truncated 1168 chars]- Remediation
View remediation
