SKILL CORE UNPACKStarts the system for the current chat. It extracts the core package, reads the core manifest, and loads the core rules.
ChatGPT Project skill packages
GPT Project Skill System is a small workflow for uploading skill packages to a ChatGPT Project, unpacking them explicitly, and loading only the skill files needed for the current session.
ChatGPT Projects can hold files and instructions, but they do not provide a clean package workflow for reusable skills.
That becomes a problem when the same capability has to be copied from chat to chat: review rules, writing formats, project procedures, reference material, helper scripts, or task-specific instructions.
This system adds a small package layer. It does not try to become a plugin platform. It gives a Project a predictable way to receive skills as ZIP files and activate them only when a chat actually needs them.
You upload one core package to the Project. The core defines the rules: where packages unpack, how manifests are read, what counts as a safe path, and when a skill becomes active.
You upload skill packages separately. A skill package can contain instructions, reference files, scripts, templates, PDFs, examples, or other files that the Project environment can use.
The central rule is simple: a skill file being present is not the same thing as a skill being active.
A skill ZIP in the Project sources is only a source file. After you unpack it, the skill exists physically under the Project runtime folder. Even then, it is not active. It becomes active only when you explicitly load it.
The lifecycle is deliberately small. There is one command to start the core, one command to install a named skill, and one command to activate that installed skill.
SKILL CORE UNPACKStarts the system for the current chat. It extracts the core package, reads the core manifest, and loads the core rules.
SKILL <name> UNPACKInstalls one skill package by name. The ZIP name, command name, install folder, and manifest skill_name must match.
SKILL <name> LOADActivates the installed skill in the current chat. Only files declared by the skill manifest for semantic loading enter the session context.
This separation keeps the session focused. You can keep several skill ZIPs available in a Project without loading all of them into every chat.
The system is strongest when a skill is mainly semantic: text the model can read and apply inside the current chat.
Semantic text skills: instructions, procedures, writing formats, review rules, prompts, reference files, and other text the model can read directly.
Tool-mediated skills: scripts and local files can be packaged, declared, and made available, but execution still depends on the current Project and Python environment.
Infrastructure skills: daemons, watchers, external services, dependency installation, background processes, and long-running systems are outside the loader.
The repository includes skill-adapter, a skill for inspecting external skill candidates before adapting them to this package format.
It reports whether a candidate is compatible, blocked, or recoverable. It can identify wrapper folders, unsafe paths, invalid manifests, missing declared files, non-text mounted files, and scripts that should not be loaded as instructions.
It does not silently convert packages, install dependencies, or run tools automatically.
Use the core ZIP first. Add one skill ZIP. Unpack the core. Unpack the skill. Load the skill only when the chat needs it.