AgentSkillsCN

oxmono-diff

在对比修改后的OxCaml软件包与原始上游版本、查找软件包来源,或探究已纳入供应商管理的软件包究竟发生了哪些变更时使用

SKILL.md
--- frontmatter
name: oxmono-diff
description: Use when comparing modified OxCaml packages against pristine upstream, finding package sources, or understanding what changes were made to a vendored package

Oxmono Diff

Overview

oxmono diff <package> shows differences between pristine upstream packages and their OxCaml-adapted versions. Use this to understand what modifications were made to any package in the monorepo.

When to Use

  • Reviewing what changes were made to a package for OxCaml compatibility
  • Understanding why a package differs from upstream
  • Preparing to update a package to a newer upstream version
  • Checking if local modifications need rebasing

Quick Reference

bash
# Show diff for a package
oxmono diff <package-name>

# Example
oxmono diff bytesrw

Finding Package Sources

Sources are tracked in sources.yaml and can be found by grepping through the package directories:

bash
# Find a package in the modified (OxCaml) directory
ls opam/<package-name>

# Find a package in the pristine upstream directory
ls sources/<package-name>

# Find packages in bleeding-edge development
ls bleeding/<package-name>

# Search for a package by partial name
ls opam/ | grep <pattern>
ls bleeding/ | grep <pattern>

Directory purposes:

  • opam/ - OxCaml-adapted packages (what gets built)
  • sources/ - Pristine upstream copies (read-only reference)
  • bleeding/ - New libraries being developed for OxCaml

How Diff Works

  1. Locates pristine source at sources/<package>
  2. Locates modified version at opam/<package>
  3. Runs diff -ruN to show unified recursive diff
  4. Output shows all files that differ between upstream and local

Common Patterns

TaskCommand
View package diffoxmono diff <pkg>
List all opam packagesls opam/
List bleeding packagesls bleeding/
Find package source URLgrep -A5 "<pkg>:" sources.yaml
Check if package existsls opam/<pkg> sources/<pkg>