Adopt-and-thin SDLC governance framework
Project description
Emkeel
Adopt-and-thin SDLC governance for AI-assisted teams. Emkeel turns a repo into a
governed project: every change flows ticket → branch → PR → deterministic CI gates →
human-approved merge → the ticket closes itself. "done" is a computed fact, never a
self-attested flag — enforcement lives server-side (CI + branch protection), out of the
agent's reach.
Getting started (AI-assisted — recommended)
You'll need: Python 3.11+ (with pip), git, a GitHub account, a Jira account + a
project, and an IDE with an AI coding agent — e.g. VS Code with Claude Code, or Cursor.
- Open your project in your AI IDE. Open the folder you want to govern — either:
- an existing repo you already have (Emkeel adds governance to it), or
- a new empty folder (Emkeel helps you start a governed project from scratch).
- Install Emkeel:
pip install emkeel
- Start the guided setup, then paste it to your agent:
emkeel onboardCopy the printed output into your AI agent's chat. It asks you a couple of questions (existing repo or new? your GitHub repo, Jira URL, project key) and then sets everything up in your language, handing you the exact links for the steps only you can do (create secrets, turn on branch protection).
That's it — the agent drives the rest, one step at a time.
Manual setup (no AI)
Prefer to do it by hand? Run emkeel init and follow the printed checklist:
# existing repo
emkeel init . --github-repo OWNER/REPO --jira-url https://you.atlassian.net --jira-project KEY
# new project
mkdir my-project && cd my-project && git init
emkeel init . --github-repo OWNER/REPO --jira-url https://you.atlassian.net --jira-project KEY
emkeel init is non-clobbering (add --dry-run to preview) and prints the exact links to
finish setup. Full guide: docs/install.md.
What you get
- Deterministic CI gates (server-side, can't be skipped): every change links a ticket; features carry a spec with acceptance criteria; the full test suite runs on every PR.
- AI review-assist — a per-criterion verdict against the spec before you merge.
- Auto-close — merging transitions the linked Jira ticket to Done.
- Clean separation — governance artifacts live in one
emkeel-governance/folder, never shipped.
See docs/lifecycle.md for the model.
Licensed under Apache-2.0 — © 2026 EMillion Networking LTD (see LICENSE / NOTICE).
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file emkeel-0.1.5.tar.gz.
File metadata
- Download URL: emkeel-0.1.5.tar.gz
- Upload date:
- Size: 16.0 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
4c2fd24cd7047dd26f83c1808ee55cf05d70165ea71702427cf8ac8ae99506de
|
|
| MD5 |
3bdaa8e8d34cc42342fd82b8c01eca56
|
|
| BLAKE2b-256 |
98781c84fd155e510477243bb92f7f81a468b03d3032a9b2bca2fd3a479f5ff9
|
Provenance
The following attestation bundles were made for emkeel-0.1.5.tar.gz:
Publisher:
release.yml on emillionnetworking-ltd-labs/emkeel
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
emkeel-0.1.5.tar.gz -
Subject digest:
4c2fd24cd7047dd26f83c1808ee55cf05d70165ea71702427cf8ac8ae99506de - Sigstore transparency entry: 1750242510
- Sigstore integration time:
-
Permalink:
emillionnetworking-ltd-labs/emkeel@ef6b3b93029709aa9500a6d74aa45f8b65c45664 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/emillionnetworking-ltd-labs
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ef6b3b93029709aa9500a6d74aa45f8b65c45664 -
Trigger Event:
release
-
Statement type:
File details
Details for the file emkeel-0.1.5-py3-none-any.whl.
File metadata
- Download URL: emkeel-0.1.5-py3-none-any.whl
- Upload date:
- Size: 19.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
1bc6fa527771db9a33567965f3455e5152fd5435ea3c584d8d2f8a096d388bed
|
|
| MD5 |
2f535ae70bbcdd86ec0fd31d946aa98b
|
|
| BLAKE2b-256 |
1cb20fd35c5cd76c8f2f209c6dda05e4c5be3e00b83c1b9656f23e0b5b794a50
|
Provenance
The following attestation bundles were made for emkeel-0.1.5-py3-none-any.whl:
Publisher:
release.yml on emillionnetworking-ltd-labs/emkeel
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
emkeel-0.1.5-py3-none-any.whl -
Subject digest:
1bc6fa527771db9a33567965f3455e5152fd5435ea3c584d8d2f8a096d388bed - Sigstore transparency entry: 1750242629
- Sigstore integration time:
-
Permalink:
emillionnetworking-ltd-labs/emkeel@ef6b3b93029709aa9500a6d74aa45f8b65c45664 -
Branch / Tag:
refs/tags/v0.1.5 - Owner: https://github.com/emillionnetworking-ltd-labs
-
Access:
private
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
release.yml@ef6b3b93029709aa9500a6d74aa45f8b65c45664 -
Trigger Event:
release
-
Statement type: