Repository navigation
Add command handoff extension and permission recovery skill - #27
Merged
Merged
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Motivation
When a necessary shell command cannot run with the agent’s permissions, the task needs a clear way to ask the user to execute it and then continue from the recorded result. Manual copying and continuation messages interrupt that workflow, while automatic retries or privilege escalation can conflict with the user’s intent or security policy.
Design Decision
Keep execution under user control
Expose a generic, sequential
request_command_handofftool that confirms the command, stages editable!input, and pauses the agent. It never executes the command itself, grants permissions, or bypasses existing user-shell handlers.Separate permission guidance from mechanics
Use a companion
permission-handoffskill instead of an automatic permission-error hook. The model decides whether handoff is appropriate, and the skill explicitly preserves refusals and security restrictions and warns about repeating commands with partial side effects.Resume only while the handoff remains valid
Resume once the unchanged command’s result is recorded, including failures. Cancel automatic continuation when input, submissions, queued messages, or session/branch navigation invalidate the handoff. Since Pi has no public user-shell completion event, watch new in-memory history entries only while a handoff is pending; document the matching limitations.
Summary