pull

A branch-update routine that fetches changes from the shared Git repository and merges the latest main branch into the current branch.

In plain words
What is it for?
Updating the remote feature branch, merging origin/main, resolving conflicts, and running project checks after the merge.
Why use it?
It keeps feature work synchronized and provides a process for handling merge conflicts before validation.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/pacificstudio/openase/pull
Any agent
npx skills add PacificStudio/openase --skill pull
Clone the repo
git clone --depth 1 https://github.com/PacificStudio/openase

Made for: Claude Code, Codex.

Per session 51 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 1,062 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin 95% copy Near-identical to another mod in the catalogue.
Token cost

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.

ModelPer sessionOnce invoked
Fable 5 $0.00051 $0.01062
Opus 5 $0.00026 $0.00531
Sonnet 5 $0.00010 $0.00212
Haiku 4.5 $0.00005 $0.00106

Measured 2d ago against content hash ee0d321b71c6, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

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 2d 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.

Origin

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.

.codex/skills/pull/SKILL.md · 103 lines

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

  1. Verify git status is clean or commit/stash changes before merging.
  2. Ensure rerere is enabled locally:
    • git config rerere.enabled true
    • git config rerere.autoupdate true
  3. Confirm remotes and branches:
    • Ensure the origin remote exists.
    • Ensure the current branch is the one to receive the merge.
  4. Fetch latest refs:
    • git fetch origin
  5. 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.
  6. Merge in order:
    • Prefer git -c merge.conflictstyle=zdiff3 merge origin/main for clearer conflict context.
  7. If conflicts appear, resolve them (see conflict guidance below), then:
    • git add <files>
    • git commit (or git merge --continue if the merge is paused)
  8. Verify with project checks:
    • Prefer .codex/skills/push/scripts/openase_ci_gate.sh so merge-time validation follows the same local gate as push-time validation.
  9. 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 status to list conflicted files.
    • Use git diff or git diff --merge to see conflict hunks.
    • Use git diff :1:path/to/file :2:path/to/file and git diff :1:path/to/file :3:path/to/file to 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.
  • 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/theirs only 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.

Read the full file on GitHub · 103 lines

Changes

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.

  1. 2d ago First seen · 103 lines · 51 tokens per session scan A ee0d321b71c6

Subscribe to this mod's changes

pull is a skill published in the GitHub repository PacificStudio/openase (265 stars, last pushed 23d ago), licensed Apache-2.0. It adds 51 tokens to every session and 1,062 once invoked, about $0.0003 per session on Opus 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.

Related

Other skills, from other repositories

aisee:init

初始化、审计并优化 OpenSpec/Aisee 项目配置。仅适用于已使用或准备接入 OpenSpec 的项目;用于创建或修复 AGENTS.md、openspec/project.md、aisee/memory/、最小 Aisee docs 目录,并在当前支持的 Codex hook target 下安装项目级 hooks;检查 hook 机制兼容性、OpenSpec 状态机、baseline 迁移入口与项目技术架构边界。触发词包括 aisee:init、aisee-init、初始化项目配置、优化 AGENTS.md、配置 Codex hooks、OpenSpec 配置审计。.

AISEE-LAB/aisee-plugin · 134 tokens

aisee:srs

通过结构化对话充分澄清软件类业务需求,并生成规划级详细的需求规格说明书(SRS)。当用户想写需求文档、澄清产品范围、整理业务目标/用户角色/业务能力/业务流程/业务规则/权限/非目标,或为 aisee:change-plan 准备稳定输入时使用。适用于 App、小程序、Web、桌面软件、后端/API 服务、CLI 工具、定时任务/异步任务等软件项目。SRS 应写到足够支持后续拆 change 和编写 change 内容,但不要写成接口设计、数据库设计、技术方案、视觉设计、硬件架构、固件设计或开发任务。.

AISEE-LAB/aisee-plugin · 159 tokens

hw:change-plan

将已确认的硬件 SRS、整体架构、工程事实和模块文档映射为可独立交付的 OpenSpec changes。用于规划硬件/嵌入式项目的 change 边界、依赖顺序、并行关系、aisee-device-spec-driven schema、source-map seed 和 /opsx:new 命令;不重新做需求、不重新做整体架构、不写实现代码。触发词包括“硬件change拆分”“硬件实施计划”“拆OpenSpec change”“source-map seed”“hw:change-plan”。.

AISEE-LAB/aisee-plugin · 127 tokens

hw:init

硬件工程初始化辅助技能。用于在 initialize-hardware-project OpenSpec change 的实现阶段,按 hw:architecture 确认的模板创建或校验工程目录、厂商库位置、Core + Function 结构、项目结构契约、时钟契约和存储/型号契约;也可在前期以 scan-existing 只读模式扫描已有 CubeMX/Keil/IAR/CMake/vendor SDK 工程事实。不得作为主流程节点绕过 OpenSpec 创建/修改工程。触发词包括“hw:init”“工程骨架”“项目目录模板”“Core+Function”“scan-existing”“generate-skeleton”。.

AISEE-LAB/aisee-plugin · 138 tokens

aisee:change-author

按当前 schema 的模板,为单个已确认 OpenSpec change 详细生成或补全文档。用于任何 schema 下的 schema-aware authoring:逐文档写清目标、范围、行为、约束、风险、验证和实施顺序,减少开发、评审和验证阶段的误解与漏项。不拆 change 边界、不重新选择 schema、不写代码;只处理 schema 声明的文档并保持跨文档一致。.

AISEE-LAB/aisee-plugin · 103 tokens

aisee:change-plan

将已确认需求、轻量修复、技术调研或项目事实映射为可独立交付的 OpenSpec changes,并为每个 change 选择合适 schema。用于规划 change 边界、依赖顺序、并行关系和 /opsx:new 命令;不重新做业务模块划分,不重新生成需求,不默认套用 app schema。.

AISEE-LAB/aisee-plugin · 87 tokens