Compare commits
3
Commits
0.0.10
...
97b131070e
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
97b131070e | ||
|
|
8ea208ced4 | ||
|
|
e803f008f0 |
@@ -28,7 +28,7 @@ jobs:
|
|||||||
# below treats as "fall back to ad-hoc".
|
# below treats as "fall back to ad-hoc".
|
||||||
SIGNING_IDENTITY: ${{ secrets.SIGNING_IDENTITY }}
|
SIGNING_IDENTITY: ${{ secrets.SIGNING_IDENTITY }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v7
|
||||||
with:
|
with:
|
||||||
ref: ${{ inputs.tag || github.ref }}
|
ref: ${{ inputs.tag || github.ref }}
|
||||||
|
|
||||||
@@ -139,7 +139,7 @@ jobs:
|
|||||||
run: ditto -c -k --sequesterRsrc --keepParent ".build/shannoncoat.app" "shannoncoat.app.zip"
|
run: ditto -c -k --sequesterRsrc --keepParent ".build/shannoncoat.app" "shannoncoat.app.zip"
|
||||||
|
|
||||||
- name: Publish release
|
- name: Publish release
|
||||||
uses: softprops/action-gh-release@v2
|
uses: softprops/action-gh-release@v3
|
||||||
with:
|
with:
|
||||||
tag_name: ${{ inputs.tag || github.ref_name }}
|
tag_name: ${{ inputs.tag || github.ref_name }}
|
||||||
files: |
|
files: |
|
||||||
|
|||||||
@@ -15,7 +15,7 @@ jobs:
|
|||||||
tag: ${{ steps.tag.outputs.tag }}
|
tag: ${{ steps.tag.outputs.tag }}
|
||||||
created: ${{ steps.tag.outputs.created }}
|
created: ${{ steps.tag.outputs.created }}
|
||||||
steps:
|
steps:
|
||||||
- uses: actions/checkout@v4
|
- uses: actions/checkout@v7
|
||||||
with:
|
with:
|
||||||
fetch-depth: 0
|
fetch-depth: 0
|
||||||
|
|
||||||
|
|||||||
@@ -1,14 +1,20 @@
|
|||||||

|

|
||||||
|
|
||||||
Run multiple isolated Claude profiles on macOS — each one its own Claude Desktop
|
Run multiple isolated [**\***](#isolation) Claude profiles on macOS — each one
|
||||||
**and** its own paired Claude Code setup — and tell their windows apart at a
|
its own Claude Desktop **and** its own paired Claude Code setup — and tell their
|
||||||
glance.
|
windows apart at a glance.
|
||||||
|
|
||||||
Your normal Claude install is left completely alone. It stays exactly as it is
|
Your normal Claude install is left alone. It stays as it is and keeps working
|
||||||
and keeps working normally; shannoncoat only adds profiles alongside it.
|
normally; shannoncoat only adds profiles alongside it.
|
||||||
|
|
||||||
A menu-bar item allows quick switching and profile management.
|
A menu-bar item allows quick switching and profile management.
|
||||||
|
|
||||||
|
---
|
||||||
|
> [!NOTE]
|
||||||
|
> shannoncoat started as the shell script in the first commit, written by hand.
|
||||||
|
Claude built the GUI app out of it — most of the Swift, the icon, and this
|
||||||
|
README — working from human direction, review, and dogfooding.
|
||||||
|
|
||||||
## Requirements
|
## Requirements
|
||||||
|
|
||||||
- macOS 13 or later
|
- macOS 13 or later
|
||||||
@@ -115,8 +121,12 @@ rather than killing Claude underneath it. Answer the dialog.
|
|||||||
|
|
||||||
## Build from source
|
## Build from source
|
||||||
|
|
||||||
Requires the Xcode Command Line Tools.
|
Local builds require the Xcode Command Line Tools.
|
||||||
|
```
|
||||||
|
xcode-select --install
|
||||||
|
```
|
||||||
|
|
||||||
|
Then run the build script
|
||||||
```bash
|
```bash
|
||||||
./build.sh
|
./build.sh
|
||||||
```
|
```
|
||||||
@@ -129,8 +139,12 @@ every time, which silently invalidates its Accessibility grant on each rebuild.
|
|||||||
`.env.example` walks through creating a self-signed certificate once so the
|
`.env.example` walks through creating a self-signed certificate once so the
|
||||||
permission survives.
|
permission survives.
|
||||||
|
|
||||||
---
|
## Isolation
|
||||||
|
|
||||||
shannoncoat started as the shell script in the first commit, written by hand.
|
> [!IMPORTANT]
|
||||||
Claude Code built the app out of it — most of the Swift, the icon, and this
|
> Perfect isolation is not guaranteed. Claude and Claude Code can have functionally
|
||||||
README — working from direction, review and testing.
|
> full disk access regardless of which profile it's running from, including access
|
||||||
|
> to default configuration folders.
|
||||||
|
>
|
||||||
|
> Some Claude integrations — skills, plugins, etc — may also hardcode the
|
||||||
|
> `~/.claude` path which may modify content in there.
|
||||||
|
|||||||
Reference in New Issue
Block a user