본문으로 건너뛰기
cccskills
무료GitHub에 공개

delete-user

Remove a member from this Egregore, revoking access across GitHub, Supabase, and Neo4j. Use for /delete-user, removing or kicking someone — not inviting (/invite) or viewing members (/dashboard).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

egregore-labs/egregore스타 293(GitHub 293 + cccskills 0)
연동 도구GitHubSupabase

실행 점수 미검증

설치 방법 보기

포함된 파일(1)

  • SKILL.md4.7 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

Remove a member from this Egregore. Revokes access across GitHub, Supabase, and Neo4j.

When to invoke

User says: "remove user", "delete user", "kick", "revoke access", "remove member", "remove them", "delete member" Not this: invite someone → /invite · view members → /dashboard

Arguments: $ARGUMENTS (Required: GitHub username of the person to remove)

Execution rules

CRITICAL: Suppress raw output. Save the API response to a file, read it with jq, and only show formatted status lines to the user.

CRITICAL: Never expose credentials in tool output. All credential handling happens inside bin/api-call.sh; never read a token into the conversation or substitute it into a command.

Step 1: Validate

If $ARGUMENTS is empty, show usage and stop:

Usage: /delete-user <github-username>

Example: /delete-user someuser

Modes (you'll be asked):
  revoke — Remove access, keep their contributions
  full   — Remove access and erase their data

Step 2: Confirm

For confirmation, ask with a structured question when available and permitted in this session; otherwise ask in plain text:

question: "How should {username} be removed from this org?"
header: "Remove mode"
options:
  - label: "Revoke access"
    description: "Remove repository and hosted membership access. Keep their sessions, artifacts, and contributions in shared memory."
  - label: "Full delete"
    description: "Revoke access AND erase their sessions, profile, todos, and telemetry. Artifacts and quests are kept but orphaned."
  - label: "Cancel"
    description: "Don't remove anyone."

If "Cancel", stop with: Cancelled.

Map "Revoke access" → mode=revoke, "Full delete" → mode=full.

Step 3: Remove (credentials stay inside the helper)

Read the non-secret configuration first:

bash bin/config-get.sh slug

Use the printed value as {slug}. If slug is unset or empty, read the fallback:

bash bin/config-get.sh org_name

Use that printed value as {slug} instead. Use the supplied GitHub username as {username} and the confirmed mode (revoke or full) as {mode}. Quote substituted values in single quotes, writing any embedded single quote as '\''.

Run with description "Removing {username} from org":

bash bin/api-call.sh DELETE '/api/org/{slug}/members/{username}?mode={mode}' --auth github --out tmp/delete-user-response.json

The helper reads the configured API URL and GitHub token internally, falling back to gh auth token if the token is absent from .env. If it fails, report its error and stop; the helper leaves no response file after a failure.

Read the response:

jq '.' tmp/delete-user-response.json

Treat .status == "removed" as success. Use .mode, .username, and .actions for the result, .errors for partial failures, and .detail for an API error.

Step 4: Display result

Interpret the response read in Step 3. Never show raw JSON to the user.

Success (status=removed, mode=revoke):

Removing {username} from {org_name}...

  GitHub access:   revoked
  Membership:      deactivated
  Member record:   marked as removed

{username} can no longer access this Egregore.
Their contributions are preserved in shared memory.

Success (status=removed, mode=full):

Removing {username} from {org_name}...

  GitHub access:   revoked
  Membership:      deactivated
  Sessions:        deleted
  Contributions:   orphaned (artifacts kept)
  Member profile:  deleted
  Telemetry:       deleted

{username} has been fully removed from this Egregore.

If errors array is non-empty, append:

Partial failures (non-fatal):
  - {error1}
  - {error2}

API error (status is not removed):

Cannot remove {username}: {error}

Common errors:

  • "Only org admins or platform admins can remove members" → you need admin role
  • "Cannot remove an admin. Change their role first." → target is an admin
  • "No active membership found" → user isn't a member or already removed

Step 5: Telemetry (fire-and-forget)

bash bin/telemetry.sh emit "command" '{"command":"delete-user"}' 2>/dev/null &

Rules

  • Only org admins or platform admins can remove members — the API verifies this
  • Cannot remove admins — they must be demoted first (future feature)
  • Cannot remove yourself
  • GitHub removal is best-effort — if the caller's token lacks repo admin scope, GitHub removal may fail but Supabase/Neo4j cleanup still proceeds
  • Never expose tokens — all credential reads happen inside bash scripts

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

activity

무료

Explicit Activity card only. Use when the user names /activity or directly asks to show, open, or render the Activity dashboard/card. Never use it to answer or synthesize what the team is focused on, busy with, prioritizing, or doing; analytical organizational questions use Search/Runtime QMD.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

egregore-labs/egregore2932026년 10월 17일 업데이트

announce

무료

Draft, preview, and explicitly send an Egregore group announcement. Use for /announce, telling the team something, or notifying everyone—not a direct message or structured handoff.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

egregore-labs/egregore2932026년 10월 17일 업데이트

archive

무료

Capture an effective prompting or steering technique as a reusable canonical pattern. Use when a prompt chain worked especially well; use /reflect for insight about the work and /note for a private thought.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

egregore-labs/egregore2932026년 10월 17일 업데이트

branch

무료

Create a working branch from what you are about to work on. Use for /branch, or any request to start a new branch before making changes.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

egregore-labs/egregore2932026년 10월 17일 업데이트

checkup

무료

Run diagnostics on an Egregore environment and render a health report, repairing safe local Runtime problems when possible. Use for /checkup, a health check, or when something is broken and the root cause is unclear.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

egregore-labs/egregore2932026년 10월 17일 업데이트

commit

무료

Stage changes and create a commit with a properly formatted message. Use for /commit, or saving work locally — not sharing it (/push) or opening a pull request (/pr).

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

egregore-labs/egregore2932026년 10월 17일 업데이트

egregore-labs의 스킬 모두 보기

이 스킬의 문제 신고