feat: add UK Companies House handler skill (#172)#218
Merged
rosspeili merged 3 commits intoJul 8, 2026
Merged
Conversation
Contributor
|
Thanks @Areen-09, this is a very strong v1 impl for #172. Reviewed the bundle, docs, examples, and ran live Companies House calls ( While this is merge-ready, I would include these minor hotfix in follow-ups pr:
Nice work on the envelope, terminology map, and mocked test coverage, this follow the issue instructions cleanly <3 Merging. |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Description
This PR introduces the
finance/uk_companies_house_handlerskill (v1 scope). It provides deterministic operations to interface with the UK Companies House REST API.Logic & Cognition Changes:
instructions.md; the skill logic in skill.py is entirely deterministic Python and requests.Documentation & Tests:
manifest.yaml,skill.py,instructions.md,card.json,test_skill.py).docs/skills/uk_companies_house_handler.md(with usage examples for all 5 providers).docs/skills/README.mdandCHANGELOG.md.Type of Change (Matches Issue Templates)
manifest.yaml,skill.py, andinstructions.md)base_skill.py,loader.py, etc.)Checklist (all PRs)
python -m flake8 .,pytest skills/(orskillware test), andpytest tests/locally (or the subset relevant to this change).CHANGELOG.mdupdated under[Unreleased]if this PR changes user-visible behavior.examples/README.mdis updated if this PR adds, renames, or removes a runnable script underexamples/.New or updated skill (complete only if this PR adds or changes a skill under
skills/)Skip this section for framework-only, documentation-only, or other PRs that do not touch the skill registry.
Bundle & metadata
skills/<category>/<skill_name>/(copied fromtemplates/python_skill/or equivalent).manifest.yamlhasname,version,description, validparameters, andconstitution.manifest.yamlincludesissuerwith realnameandemail(not template placeholders).short_descriptionin manifest (~80 chars) forskillware list.issuer.githubandissuer.orgset when applicable.requirementsandenv_varsare documented when the skill needs them.Logic, cognition, and UI
skill.pyis deterministic Python (no arbitrary LLM-generated code paths).instructions.mdexplains when and how to use the skill.card.jsonis present and itsissuermatchesmanifest.yaml(nameandemailat minimum).Tests & loader
test_skill.pycovers execution and schema expectations.SkillLoader.load_skill("<category>/<skill_name>")succeeds (or missing deps are documented).Documentation & catalog
docs/skills/<skill_name>.mdexists or is updated (ID, Issuer, usage).docs/skills/README.mdlists the skill with ID and Issuer.Constitution & Safety (if adding or modifying a skill)
Related Issues
Implements v1 of #172