Borrowing it
Nothing to install: this file belongs to PacificStudio/openase. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.
curl -O https://raw.githubusercontent.com/PacificStudio/openase/main/.codex/skills/pull/SKILL.mdgit clone --depth 1 https://github.com/PacificStudio/openaseWrote this? Show the measurements
A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.
[](https://agentmods.dev/skills/pacificstudio/openase/pull)<a href="https://agentmods.dev/skills/pacificstudio/openase/pull"><img src="https://agentmods.dev/badge/skills/pacificstudio/openase/pull/github.svg" alt="Measured on agentmods" height="20"></a>Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.
<a href="https://agentmods.dev/skills/pacificstudio/openase/pull"><img src="https://agentmods.dev/badge/skills/pacificstudio/openase/pull.svg" alt="Reviewed on agentmods" width="80" height="20"></a>What it costs to keep this loaded
Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.
| Model | Per session | Once invoked |
|---|---|---|
| Fable 5.1 | $0.00051 | $0.01062 |
| Opus 5.5 | $0.00020 | $0.00425 |
| Sonnet 5.5 | $0.00010 | $0.00212 |
| Haiku 4.5 | $0.00005 | $0.00106 |
Grade A, and why
pull scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 1mo ago.
A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.
Nothing flagged
None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.
This is a copy
95% identical to pull — 6 lines differ, which has more behind it and is treated as the original. This page carries a canonical link to it rather than competing with it.
How it starts
The opening of the file, as written. The whole thing — 103 lines — stays where its author put it; the contents beside it link to each section on GitHub.
Pull
Workflow
- Verify git status is clean or commit/stash changes before merging.
- Ensure rerere is enabled locally:
git config rerere.enabled truegit config rerere.autoupdate true
- Confirm remotes and branches:
- Ensure the
originremote exists. - Ensure the current branch is the one to receive the merge.
- Ensure the
- Fetch latest refs:
git fetch origin
- Sync the remote feature branch first:
git pull --ff-only origin $(git branch --show-current)- This pulls branch updates made remotely (for example, a GitHub auto-commit)
before merging
origin/main.
- Merge in order:
- Prefer
git -c merge.conflictstyle=zdiff3 merge origin/mainfor clearer conflict context.
- Prefer
- If conflicts appear, resolve them (see conflict guidance below), then:
git add <files>git commit(orgit merge --continueif the merge is paused)
- Verify with project checks:
- Prefer
.codex/skills/push/scripts/openase_ci_gate.shso merge-time validation follows the same local gate as push-time validation.
- Prefer
- Summarize the merge:
- Call out the most challenging conflicts/files and how they were resolved.
- Note any assumptions or follow-ups.
Conflict Resolution Guidance (Best Practices)
- Inspect context before editing:
- Use
git statusto list conflicted files. - Use
git difforgit diff --mergeto see conflict hunks. - Use
git diff :1:path/to/file :2:path/to/fileandgit diff :1:path/to/file :3:path/to/fileto compare base vs ours/theirs for a file-level view of intent. - With
merge.conflictstyle=zdiff3, conflict markers include:<<<<<<<ours,|||||||base,=======split,>>>>>>>theirs.- Matching lines near the start/end are trimmed out of the conflict region, so focus on the differing core.
- Summarize the intent of both changes, decide the semantically correct
outcome, then edit:
- State what each side is trying to achieve (bug fix, refactor, rename, behavior change).
- Identify the shared goal, if any, and whether one side supersedes the other.
- Decide the final behavior first; only then craft the code to match that decision.
- Prefer preserving invariants, API contracts, and user-visible behavior unless the conflict clearly indicates a deliberate change.
- Open files and understand intent on both sides before choosing a resolution.
- Use
- Prefer minimal, intention-preserving edits:
- Keep behavior consistent with the branch's purpose.
- Avoid accidental deletions or silent behavior changes.
- Resolve one file at a time and rerun tests after each logical batch.
- Use
ours/theirsonly when you are certain one side should win entirely. - For complex conflicts, search for related files or definitions to align with the rest of the codebase.
- For generated files, resolve non-generated conflicts first, then regenerate:
- Prefer resolving source files and handwritten logic before touching generated artifacts.
- Run the CLI/tooling command that produced the generated file to recreate it cleanly, then stage the regenerated output.
- For import conflicts where intent is unclear, accept both sides first:
- Keep all candidate imports temporarily, finish the merge, then run lint/type checks to remove unused or incorrect imports safely.
- After resolving, ensure no conflict markers remain:
git diff --check
- When unsure, note assumptions and ask for confirmation before finalizing the merge.
What this file has done since we first saw it
Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.
- 1mo ago First seen · 103 lines · 51 tokens per session scan A ee0d321b71c6
pull is a skill published in the GitHub repository PacificStudio/openase (269 stars, last pushed 2mo ago), licensed Apache-2.0. It adds 51 tokens to every session and 1,062 once invoked, about $0.0002 per session on Opus 5.5. A static security scan graded it A with 0 findings. It is 95% identical to pull, differing in 6 lines, and is treated as a copy.
Other skills, from other repositories
open-code-review
Performs AI-powered code review on Git changes using the ocr CLI from alibaba/open-code-review. Use when the user asks to review code, review a pull request, review staged/unstaged changes, review a commit, or compare branches for code quality issues. Produces line-level review comments and can automatically apply…
baby-sit
Monitor a GitHub pull request until CI is green, diagnose failures, and rerun only evidence-backed flaky GitHub Actions jobs.
git-checkpoint
Use git as a safety net - create a checkpoint commit before risky or large changes and roll back cleanly if a change makes things worse. Use before multi-file refactors.
git
Git and code hosting platform management — GitHub, GitLab, Codeberg, Forgejo. Zero barrier — install x-cmd and manage repos from the terminal. Use for "git", "github", "gitlab", "repo", "pull request", "code hosting".
meta-codereview-current-diff
Read the current uncommitted diff, run three independent reviewers (safety + tests-coverage + style) in parallel, then arbitrate a single BLOCK / BLOCKWITHOVERRIDE / PASSWITHNOTES verdict. Use before commit when you want a multi-perspective second-opinion instead of a single-reviewer agent loop.
git-diff
Capture the current git diff (staged, working-tree, or staged file list) as text. Direct shell call for workflows that need repository diffs without an LLM agent loop.