Skip to content

feat(profile): v0.6.3 — Session Shell#7

Merged
g761007 merged 1 commit into
mainfrom
v0.6.3
May 15, 2026
Merged

feat(profile): v0.6.3 — Session Shell#7
g761007 merged 1 commit into
mainfrom
v0.6.3

Conversation

@g761007
Copy link
Copy Markdown
Owner

@g761007 g761007 commented May 15, 2026

Summary

  • Add skillpod shell <profile> command that spawns $SHELL with the profile env pre-loaded
  • Nest guard: SKILLPOD_SHELL_DEPTH > 0 raises ProfileError("already inside a skillpod shell; exit first") → exit 1
  • Child env sets SKILLPOD_ACTIVE_PROFILE, SKILLPOD_SHELL_DEPTH=1, and prefixes PS1/PROMPT with [skillpod:<profile>]
  • Profile is validated via compose_effective_skillset before spawning — unknown profiles exit 1
  • status JSON now includes "shell_session": {"active": bool, "depth": int} and human output shows shell session: active (depth=N) when inside a shell

Test plan

  • tests/test_shell.py — 5 new tests: env building, nest guard, unknown profile, executable selection, PS1 prefix
  • tests/test_cli.pytest_shell_command_nested_guard via CliRunner
  • 380 passed, 1 skipped (up from 374)

@g761007 g761007 merged commit 7978364 into main May 15, 2026
7 of 8 checks passed
@g761007 g761007 deleted the v0.6.3 branch May 15, 2026 01:47
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant