원클릭으로
smaqit-session-finish
End session by documenting the entire conversation. Use at session completion to create history entries.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
메뉴
End session by documenting the entire conversation. Use at session completion to create history entries.
Codex 또는 Claude로 설치 이 Prompt를 복사해 Codex, Claude 또는 다른 어시스턴트에 붙여 넣으면 Skill 페이지를 검토하고 설치를 진행할 수 있습니다.
Use when manually generating or updating the canonical 3-workflow GitHub Actions CI/CD set (deploy.yml, provision.yml, post-merge-deploy.yml) for a Node.js + React application deployed to a VM via Terraform and Docker Compose. Also use when an operator invokes /cicd.generate, or when updating existing workflows to match project conventions. In `smaqit.new-greenfield-project`, the deployment agent generates workflows during Phase 5 using these patterns as reference — invoke this skill directly only when generating CI/CD outside the zero-to-prod flow. Note: `copilot-setup-steps.yml` is provided by the smaqit framework and is not generated by this skill.
Use when deploying a Node.js backend + React frontend application to a remote VM via rsync. Used in the Phase 5 dev environment sweep of `smaqit.new-greenfield-project` to validate the deployment approach locally before CI/CD. Also use as a manual fallback for direct VM deployment outside the CI/CD pipeline.
Use after any deployment to confirm the application is healthy before closing the task or proceeding. Checks the health endpoint, verifies the deployed commit SHA against the current local commit, and validates the SPA root HTTP response. Produces a PASS/FAIL report per check with a final summary. Also use when a deployment task asks to confirm success or when re-verifying after a fix.
Use when configuring a custom domain with a Let's Encrypt TLS certificate for a running nginx server. Covers DNS propagation verification, nginx server_name update, Certbot certificate issuance, HTTPS smoke tests, and auto-renewal verification. Also use when activating a purchased domain for a deployed application, setting up HTTPS post-deployment, or when a spec references INF-TOPOLOGY-004 through INF-TOPOLOGY-007 as pending TLS configuration.
Use when writing deploy stamp files (DEPLOY_SHA, DEPLOY_TIME) to the VM after a successful deployment, or when re-stamping without a full redeploy. Also use when the health endpoint returns "sha":"unknown" after deployment, when a deployed PR needs a notification comment, or when smaqit.infrastructure-deploy-rsync invokes the post-deploy stamp step. Produces DEPLOY_SHA and DEPLOY_TIME files in /opt/him/backend/ on the VM and optionally posts a deploy comment on the merged PR.
Use when validating staged files before committing to catch .env files, plaintext API keys/secrets, draft spec files on main-branch commits, and large files over 1 MB. Also use when setting up the automated git pre-commit hook via the bundled install script so checks run automatically on every commit. Produces a PASS/FAIL report per check, with filenames and matching lines listed for failures.
SOC 직업 분류 기준
| name | smaqit.session-finish |
| description | End session by documenting the entire conversation. Use at session completion to create history entries. |
| metadata | {"version":"0.8.1"} |
End a session by documenting the entire session (not just recent activity).
Read the full session from the transcript
{{VSCODE_TARGET_SESSION_LOG}}, replace debug-logs with transcripts, and append .jsonlwc -l <path> in the terminal to check sizeread_file toolpython3 <skill-dir>/scripts/recap.py <transcript-path> via terminal, where <skill-dir> is the directory containing this SKILL.md (derivable from the skill listing path). Use the script output as the session arc source instead of the raw file.session.start invocation and is the guaranteed anchor for "earliest action in this session"session.start to nowCreate history file if session qualifies as significant
.smaqit/history/NNN_description_YYYY-MM-DD.md
NNN = Next sequential number (inspect existing files; if none exist, start at 001)description = Brief topic description (2-4 words, lowercase with underscores)YYYY-MM-DD = Session dateStore session context in memory using the memory tool with type: workspace (call both in parallel):
subject: "session history"fact: "[NNN] [YYYY-MM-DD]: [2–3 sentence summary of key actions, decisions, and outcomes]" (≤ 200 chars)citations: path to the history file just created (e.g., .smaqit/history/NNN_description_YYYY-MM-DD.md)reason: "Provides cross-branch session context so the next session start can resume work regardless of active branch"subject: "next steps"fact: "[1–3 most important pending actions or decisions]" (≤ 200 chars)citations: path to the history file just createdreason: "Ensures pending work is visible in the next session regardless of active branch"Note: Task state in memory is owned by task skills (task-create, task-start, task-complete). Do NOT store task lists or task status here.
Refresh research map (best-effort — do not let failure block session completion)
.smaqit/references/project-research.md exists.smaqit.project-research to build it for the first time, then continue to Step 4.**Refreshed:** date from the map header.Refreshed: date).go.mod, package.json, requirements.txt, pyproject.toml, *.csproj, pom.xml, Cargo.toml, Gemfile, composer.json, build.gradle) has a modification timestamp newer than the map's Refreshed: date.smaqit.project-research to rebuild.Update this history file as the session reference for next chat
Update the project compendium (after history file is written):
references/COMPENDIUM_FORMAT.md from the smaqit.project-compendium skill before writing any entries..smaqit/compendium.md for semantically similar existing entries.
memory tool with type: workspace (Step 2) even when no history file was created — memory is the cross-branch context mechanism