Migrate Core Code to Submodules
tinyhumansai/openhuman
Plans and carries out moving non-host-specific code and its tests from the OpenHuman core into vendored tiny submodule libraries, then releases the submodule and re-pins the host.
Rules for choosing Rust types for filesystem paths in new Codex code, covering protocol types, internal use and model tool arguments.
$ npx skills add openinterpreter/openinterpreter --skill path-types -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install openinterpreter/openinterpreter path-types --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/openinterpreter/openinterpreter.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.codex/skills/path-types .claude/skills/path-types && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "path-types" agent skill from https://github.com/openinterpreter/openinterpreter/tree/main/.codex/skills/path-types into .claude/skills/path-types/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "path-types", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/openinterpreter/openinterpreter/tree/main/.codex/skills/path-typesType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add openinterpreter/openinterpreter --skill path-types -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install openinterpreter/openinterpreter path-types --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openinterpreter/openinterpreter.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.codex/skills/path-types .agents/skills/path-types && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "path-types" agent skill from https://github.com/openinterpreter/openinterpreter/tree/main/.codex/skills/path-types into .agents/skills/path-types/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "path-types", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add openinterpreter/openinterpreter --skill path-types -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install openinterpreter/openinterpreter path-types --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openinterpreter/openinterpreter.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.codex/skills/path-types .cursor/skills/path-types && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "path-types" agent skill from https://github.com/openinterpreter/openinterpreter/tree/main/.codex/skills/path-types into .cursor/skills/path-types/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "path-types", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/openinterpreter/openinterpreter.git --path .codex/skills/path-types--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add openinterpreter/openinterpreter --skill path-types -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install openinterpreter/openinterpreter path-types --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openinterpreter/openinterpreter.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.codex/skills/path-types .gemini/skills/path-types && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "path-types" agent skill from https://github.com/openinterpreter/openinterpreter/tree/main/.codex/skills/path-types into .gemini/skills/path-types/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "path-types", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install openinterpreter/openinterpreter path-typesInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add openinterpreter/openinterpreter --skill path-types -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/openinterpreter/openinterpreter.git skills-src && mkdir -p .github/skills && cp -r skills-src/.codex/skills/path-types .github/skills/path-types && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "path-types" agent skill from https://github.com/openinterpreter/openinterpreter/tree/main/.codex/skills/path-types into .github/skills/path-types/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "path-types", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add openinterpreter/openinterpreter --skill path-types -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install openinterpreter/openinterpreter path-types --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/openinterpreter/openinterpreter.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.codex/skills/path-types .opencode/skills/path-types && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "path-types" agent skill from https://github.com/openinterpreter/openinterpreter/tree/main/.codex/skills/path-types into .opencode/skills/path-types/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "path-types", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
path-typesRules for choosing Rust types for filesystem paths in new Codex code, covering protocol types, internal use and model tool arguments.
The guidance applies when you define new path-carrying types and treats the rules as the target of an ongoing migration to URIs. Changes to existing code should be made only on request and kept small; if compliance is hard, the agent should ask how to proceed. App-server protocol types use LegacyAppPathString for backward compatibility, convert to PathUri at the boundary and use PathUri inside; host-local logic such as some config values uses AbsolutePathBuf or PathBuf.
Exec-server protocol types use PathUri, with PathUri or AbsolutePathBuf internally, and dependencies shared by both servers use PathUri or separate APIs. Paths a model generates in tool-call arguments stay plain strings handled by feature-specific code. The migration requirements include keeping legacy clients working, not changing model-visible text for local-only operation, failing closed on security-relevant conversion errors, and not yet storing URIs in persistent storage.
Read from SKILL.md and the folder at commit cc054cf. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
No scripts in the folder and no shell commands in SKILL.md.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Rust Path Types loads about 605 tokens when it runs. Until then it costs about 41 tokens; SKILL.md has 318 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.
The full file from openinterpreter/openinterpreter at commit cc054cf, republished under its Apache-2.0 licence (© openinterpreter). 318 words, ~605 tokens.
.claude/skills/path-types/SKILL.md (or your agent's skills folder).Apply this guidance when defining new types. Change existing code only when explicitly requested, and keep edits minimal and proportional. Treat these rules as the target state of an ongoing migration; if compliance is difficult, ask the user how to proceed.
LegacyAppPathString for backwards compatibility during the URI
migration. At the protocol boundary, convert it to PathUri and use PathUri internally. For
host-local logic, such as some config values, use AbsolutePathBuf or PathBuf instead.PathUri. Internally, use PathUri or AbsolutePathBuf as
appropriate.PathUri or separate APIs that decouple their use
cases.Strings with feature-specific path handling code.Keep these requirements in mind while migrating code to conform with the above guidelines:
PathUri or LegacyAppPathString over local helpersPathUri values as URIs in diagnosticsIt is OK if the conversion between paths and URIs is somewhat lossy as long as it will do the right thing for real users.
Migrating to URIs should not add significant new failure modes. We will need to surface errors in some places that were previously infallible but it should be kept to a minimum.
© openinterpreter, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .codex/skills/path-types of openinterpreter/openinterpreter.
Open the folder on GitHubat commit cc054cf
We found 2 copies of this SKILL.md (exact, near-identical or edited) in other folders, from 2 other GitHub owners. This page covers the copy in openinterpreter/openinterpreter, which our catalogue first saw on October 7, 2026.
Rust Path Types next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Rust Path Types this skillopeninterpreter/openinterpreter | 69k | 2 repos | ~605 | Automated safety check: Pass | Apache-2.0 | |
| Migrate Core Code to Submodulestinyhumansai/openhuman | 41k | — | ~2.6k | Automated safety check: Pass | GPL-3.0 | |
| RTK Rust Design Patternsrtk-ai/rtk | 83k | — | ~1.9k | Automated safety check: Pass | Apache-2.0 | |
| Convert Internal Package to TypeScriptTryGhost/Ghost | 55k | — | ~1.2k | Automated safety check: Pass | MIT | |
| jscpd Code Migration Trackerkucherenko/jscpd | 6.3k | — | ~5k | Automated safety check: Pass | MIT | |
| RustPython Stdlib UpgradeRustPython/RustPython | 22k | — | ~876 | Automated safety check: Pass | MIT |
tinyhumansai/openhuman
Plans and carries out moving non-host-specific code and its tests from the OpenHuman core into vendored tiny submodule libraries, then releases the submodule and re-pins the host.
rtk-ai/rtk
Describes seven Rust design patterns for the RTK CLI filter modules, with when to use each, RTK examples, and notes on when a pattern is overkill.
TryGhost/Ghost
Moves a legacy internal Ghost package from JavaScript and CommonJS to TypeScript and ESM in three focused commits that keep git file history intact.
kucherenko/jscpd
Measures a code port between languages or frameworks with jscpd's function-level comparison, porting tests before code and tracking what is left unmatched.
RustPython/RustPython
Upgrades a Python standard library module from CPython into RustPython with update_lib, then triages and marks the tests that still fail.
ariebovenberg/whenever
Instructions for using whenever's internal Rust FFI abstractions
openinterpreter/openinterpreter
Watches an open GitHub pull request until it merges, handling review comments, diagnosing CI failures and retrying flaky checks along the way.
openinterpreter/openinterpreter
Bumps the pinned v8 and rusty_v8 versions in Codex, validates the release-candidate path with the v8-canary check, and traces failures to upstream build changes.
openinterpreter/openinterpreter
Rewrites the title and body of one or more pull requests with gh, leading with why the change was made, then what changed, and describing only the net result.
openinterpreter/openinterpreter
Explains how to run agent integration tests against remote executors, using Docker for Linux or Wine for Windows, and how to opt tests in or skip them.
openinterpreter/openinterpreter
Run a final code review on a pull request
openinterpreter/openinterpreter
Guide for testing Codex TUI interactively
Works with
Categories
Rules for choosing Rust types for filesystem paths in new Codex code, covering protocol types, internal use and model tool arguments. The guidance applies when you define new path-carrying types and treats the rules as the target of an ongoing migration to URIs. Changes to existing code should be made only on request and kept small; if compliance is hard, the agent should ask how to proceed.
Rust Path Types fits situations like: defining a new Rust struct that carries a filesystem path in the Codex codebase; deciding between PathUri, AbsolutePathBuf and PathBuf for a field; reviewing a change that adds path types to a protocol definition; handling path arguments generated by a model in a tool call.
Run `npx skills add openinterpreter/openinterpreter --skill path-types -a claude-code`. Or copy the skill folder (.codex/skills/path-types in openinterpreter/openinterpreter) into .claude/skills/path-types in your project. Claude Code loads it when a task matches its description.
Run `npx skills add openinterpreter/openinterpreter --skill path-types -a codex`. Or copy the skill folder (.codex/skills/path-types in openinterpreter/openinterpreter) into .agents/skills/path-types in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add openinterpreter/openinterpreter --skill path-types -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/path-types, .gemini/skills/path-types, .github/skills/path-types and .opencode/skills/path-types in your project.
SKILL.md names no scripts, command-line tools or credentials: Rust Path Types is instructions for the agent only.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.
Rust Path Types is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 605 tokens (SKILL.md is roughly 2.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Rust Path Types: Migrate Core Code to Submodules (tinyhumansai/openhuman, 41k stars), RTK Rust Design Patterns (rtk-ai/rtk, 83k stars), Convert Internal Package to TypeScript (TryGhost/Ghost, 55k stars) and jscpd Code Migration Tracker (kucherenko/jscpd, 6.3k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
openinterpreter (a GitHub organization) maintains it in openinterpreter/openinterpreter, which has 68,517 GitHub stars. The repository holds 10 skills in this directory. The repository was last updated on October 7, 2026.
Source: openinterpreter/openinterpreter on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.