Skip to main content

send-reply

Send the final reply message to the user on the platform. This is the ONLY way to communicate with the user externally. If you don't use this skill, the user won't see your response.

설치로 이동

소스 정보

저장소
jim60105/AIr-Friends
최근 소스 활동
2026년 8월 28일 23:09
감지된 SKILL.md 언어
영어
스타
6
포크
0

설치 방법

기본적으로 소스를 먼저 확인하는 Prompt가 선택됩니다. 직접 명령으로 전환하거나 로컬 사본을 다운로드할 수도 있습니다.

소스 파일 검토

설치 여부를 결정하기 전에 SKILL.md와 SkillsMP에 표시된 보조 파일을 읽어 보세요.

파일 탐색기
2 개 파일

SKILL.md 표시 중

SKILL.md
소스 지침 · 읽기 전용 미리보기
name
send-reply
description
Send the final reply message to the user on the platform. This is the ONLY way to communicate with the user externally. If you don't use this skill, the user won't see your response.
allowed-tools
Bash
# Send Reply Skill Send your final response to the user. This is the gateway to external communication. ## Critical Rules 1. **One reply only**: You can only send ONE reply. You MUST send exactly ONE reply. 2. **This is the ONLY external output**: All other processing remains internal. 3. **Timeout**: The script won't run for more than 30 seconds. If it hangs, do stop_bash. 4. **No second attempt**: If you fail to send the reply or if the script encounters an error, you won't get a second chance to send another reply. That means you failed your job. Make sure your message is final and well-crafted before executing this skill. 5. **Think before you send**: Take a moment to review your message for clarity, tone, and content. Once you hit send, there's no going back. 6. **Exit directly after sending the reply**: After executing this `send-reply` skill, you must exit immediately. Do not summarize, continue processing, or attempt to send another message. Your job is done. 7. **Threading**: The reply is threaded to the message the file tool (`send-file`) most recently delivered, when one exists in this session; otherwise it is threaded to the user's trigger message. ## Usage **Two-step flow — the message text MUST NOT appear on the command line.** 1. Write your reply text to a payload file under the session staging directory using your **edit/write tool**: ``` $TMPDIR/$SESSION_ID/reply.md ``` The `$TMPDIR` / `$SESSION_ID` tokens in that path are expanded by the ACP path boundary, so the write is approved and the text bytes are preserved **verbatim** (no shell expansion). `$TMPDIR/$SESSION_ID/` is the per-spawn form of the staging directory; in shared-process deployments the staging directory is shown in your system prompt and the script resolves it automatically. 2. Invoke the script with the payload file path: ```bash ${HOME}/.agents/skills/send-reply/scripts/send-reply.ts \ --session-id "$SESSION_ID" \ --message-file "$TMPDIR/$SESSION_ID/reply.md" ``` **WARNING**: Never put message content on the command line. The legacy `--message "..."` / `--message=...` flags are REMOVED: the shell expands `$VAR` in them (e.g. `$0` → `/usr/bin/bash`, `$HOME`, `$API_KEY`), which corrupts your message and can leak environment variables to the user. ## Parameters | Parameter | Required | Description | | ---------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------ | | `--session-id` | Yes | Use the session id rendered in your system prompt. `$SESSION_ID` works only in per-spawn deployments; in shared-process mode it is not set and the skill library resolves the owning session automatically — a mismatched value is never honored | | `--message-file` | Yes | Path of the payload file containing the reply text (must be under `$TMPDIR/$SESSION_ID/`) | ## Error Codes If the script fails, read the JSON error on stderr. It contains the fix. Common codes: | Code | Meaning | Fix | | ----------------------------- | ---------------------------------------------- | -------------------------------------------------------------------------- | | `SKILL_LEGACY_FLAG` | You used the removed `--message` flag | Put the text in `$TMPDIR/$SESSION_ID/reply.md` and use `--message-file` | | `SKILL_MISSING_PAYLOAD` | No `--message-file` given | Write the payload file first, then invoke with `--message-file` | | `SKILL_PAYLOAD_OUT_OF_BOUNDS` | Payload path is outside `$TMPDIR/$SESSION_ID/` | The script only reads its own session's staging dir — stage the text there | | `SKILL_PAYLOAD_NOT_FOUND` | Payload file missing/unreadable | Write the file FIRST with the edit/write tool, then invoke the script | ## Limits - Maximum **1 reply** per session. After sending the first reply, subsequent calls will be rejected. - If rejected, use `edit-reply` to modify the existing message instead. - Excessive retry attempts will cause the agent process to be terminated. - Ultrathink carefully and ensure you have all the text prepared before proceeding, as you may not get another chance.
GitHub에서 보기