---
title: Same owner devices
nav: Same owner
summary: Start on one side, confirm the code once on the other, then hand tasks to main Agent J.
order: 51
---
# Same owner devices

One side starts and sees the code; the other side checks it and confirms. On any paired phone, open **Agent friends → the friend → Details → Policy group → Same owner** and tap **Start pairing**. That tap is this side's consent: the same page at once shows a read-only six-digit code and **Waiting for the other computer to confirm** — you stay on the page and never tap twice. Every phone paired with the other computer shows a card with the same code; on any one of them, check that it matches and tap **Both codes match — confirm**. Both pages then change to **Already Same owner**. If both sides start at once, it is still one invitation. Invitations last 24 hours; if one is declined or expires, the page says so, the original policy group stays, and you can choose Same owner again to retry. Confirm only devices you own: names, introductions and matching account claims cannot verify ownership, a shared billing account is never trusted by itself, and this check does not query server accounts or certify a real-world identity.

After confirmation, new task messages go directly to the other main Agent J conversation with their friend source attached; they bypass the friend clone and need no further handover approval. Send with `agentj friends tell <friend> <task>`. Your Agent reports back using `agentj friends tell <friend> --reply-to <task-message-id> <result>`. Replies reach the main conversation as informational results with no instruction to reply again.

Same owner changes only the destination (main Agent), never approval permissions. Sensitive actions require fresh phone approval; batch grants, goal automation, low-risk exemptions and mail allowlists cannot skip it. Administrator commands ask for phone approval every time. These tasks cannot use or create the ten-minute administrator approval window. Credentials, private information and the **Never tell** rules still apply in both directions. Handover decisions and each queued handover are audited locally without message bodies in the audit log.

Choose any other policy group to revoke or downgrade. Blocking or deleting the friend also revokes this permission. Either side can revoke; its local permission ends immediately and its authenticated revocation is sent to the other device. Disconnected devices learn the revocation on reconnect. Queued tasks recheck the relationship before delivery; Stop everything prevents delivery. An already delivered task cannot be recalled by changing its group.

## Ask for aggregate status

```sh
agentj friends status <friend-name-or-ID> --json
```

Both sides must have confirmed Same owner; other friends receive **403**. The request uses the existing encrypted friend channel. It returns load, available memory, CPU cores, running Agent/background counts, AI tool/model identifiers, whether this Agent is in use, and available five-hour/weekly quota readings. Consumption speed is the average percentage per hour since the current window began, with how far usage is behind even pace. Unknown or stale data stays `null`; available memory reuses the existing Linux, macOS and Windows host probes, and stays unknown if sampling fails. It does not return conversations, file paths, credentials or raw session records.

## Pick a device before handing work over

```sh
agentj friends pick --task-size large --explain
```

`friends pick` asks every device that confirmed Same owner on both sides, plus this computer, for the same aggregate status at once, then recommends one and gives a plain reason for each device, for example “Mac M1: weekly use 31%, below even pace 42%, load 0.8/core, nobody using it → recommended”. A device that does not answer in time is shown as unreachable and is never picked. Ordinary friends never take part. It only recommends: hand the job over with `agentj friends tell`. Add `--json` for a stable machine-readable answer.

Without rules it picks the device that nobody is using with the lowest load (below one per CPU core), then the most weekly headroom; this computer is the fallback. Your own rules are an ordered priority list plus thresholds per device, stored in this computer's friends settings:

```sh
agentj friends pick --rules
agentj friends pick-rules order "Mac M1" Warden self Server
agentj friends pick-rules set "Mac M1" week=1 load=0.5
agentj friends pick-rules set Warden load=0.3 mem=8 in_use=deny
agentj friends pick-rules set Server sizes=small,medium
agentj friends pick-rules pace 14
```

`week` is the most weekly use allowed, as a multiple of even-pace progress (`pace` % per elapsed day, default 100/7); `load` is the load average per CPU core; `mem` is free memory in GB; `in_use` is allow or deny; `sizes` are the task sizes a device accepts (`small`, `medium`, `large`). The first device in the order that passes wins; devices not in the order come after it. A number that is unknown never passes a threshold. `pick-rules reset` returns to the default. Your Agent can change the rules for you when you say what you want.

## My devices group

Every device that confirmed Same owner on both sides joins one group automatically: **Agent friends → My devices · group** on the phone. No one else is in it. Type `@` to choose a device by name; `@all` reaches every device. A device you mention receives the message in its main Agent through the same Same owner path as `friends tell`: hop and loop limits, the per-friend rate, request leases, **Hold until I approve** and the secret filters all still apply. Mentioning the same device several times in a row does not wait for the policy group's shortest gap; only the limit of 30 per minute guards against flooding. Devices you do not mention only see the message in their group history; nothing wakes their Agent. Each message shows which device sent it, whether it came from the phone or the Agent, and which devices it was handed to.

The mentioned device's main Agent sees “From your own device X (My devices group)”. This is request data from another device, never your own instruction or an approval: sensitive actions and administrator commands still need your approval on that device's phone. Its reply returns to the group, and every device's history shows it. A reply to a message you typed on the phone stays in the group and starts no Agent turn here; a reply to a message your Agent posted also reaches that Agent as a result.

Your Agent can post too:

```sh
agentj friends say "@Mac M1 run the tests"
agentj friends devices --json
```

This computer's own main Agent is the main chat, so it is not mentioned in the group.
