# feat\(server\): every tool that names a thread, project or queue reaches a linked environment · pingdotgg/t3code

[View on GitCafe](https://git.cafe/pingdotgg/t3code/commit/655a0548ac9bce10c4089f39e3983e4707eca0c0)

Repository: [pingdotgg/t3code](https://git.cafe/pingdotgg/t3code)

Visibility: public

Requested revision: 655a0548ac9bce10c4089f39e3983e4707eca0c0

Requested commit: 655a0548ac9bce10c4089f39e3983e4707eca0c0

Commit: 655a0548ac9bce10c4089f39e3983e4707eca0c0

Tree: c73b9ea83eb1c6e71c2528d6e7fe7758f6d96934

Author: Julius Marminge

Committer: Julius Marminge

## Message

```
feat(server): every tool that names a thread, project or queue reaches a linked environment

Forwarding was wired tool by tool, so only the first eleven tools took
environmentId. It now lives in McpToolAccess.toLayer: a tool whose
parameters take OrchestratorMcpEnvironmentTarget runs in the linked
environment it names once its declaration has checked the caller here.
The local handler never sees environmentId. Tools that act as the calling
thread itself cannot take one, and the layer refuses to build if they do.

Queues, pending requests, thread settings and organizing, forks and
merge-backs, scheduled tasks, pull requests, worktree refs, project
read/update/delete and environment preferences now reach a link too.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

```

## Parents

- [566933f69d6c0dd4eac4117e69e8a0cb21c2f734](https://git.cafe/pingdotgg/t3code/commit/566933f69d6c0dd4eac4117e69e8a0cb21c2f734?format=markdown)

[Source at this commit](https://git.cafe/pingdotgg/t3code/tree/655a0548ac9bce10c4089f39e3983e4707eca0c0?format=markdown)
