boost-skill-cli 1.0.47__tar.gz → 1.0.49__tar.gz
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/.gitignore +3 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/PKG-INFO +1 -1
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/_version.py +2 -2
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_skill_cli.egg-info/PKG-INFO +1 -1
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/docs/roadmap.html +142 -1
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/CLAUDE.md +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/CONTRIBUTING.md +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/LICENSE +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/MANIFEST.in +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/Makefile +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/README.md +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/SECURITY.md +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/__init__.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/__main__.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/cli.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/cliparse.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/__init__.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/bmad.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/configuration.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/discovery.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/hooks.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/info.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/intelligence.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/pkg.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/quality.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/taps.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/commands/team.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/__init__.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/agents.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/ai.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/catalog.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/claude_settings.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/config.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/dense.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/embed.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/frontmatter.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/gitutil.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/journal.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/lockfile.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/logs.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/output.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/paths.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/policy.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/rag.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/registry.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/store.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/core/util.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/data/registries.json +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/errors.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_cli/spin.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_skill_cli.egg-info/SOURCES.txt +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_skill_cli.egg-info/dependency_links.txt +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_skill_cli.egg-info/entry_points.txt +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_skill_cli.egg-info/requires.txt +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_skill_cli.egg-info/top_level.txt +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/docs/.claude/settings.local.json +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/docs/DEBUGGING.md +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/docs/demo.gif +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/docs/demo.tape +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/docs/design-roadmap.html +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/docs/index.html +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/docs/rag-architecture.md +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/pyproject.toml +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/scripts/build_registries.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/scripts/mutation_gate.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/setup.cfg +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/style/README.md +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/style/boost.css +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/style/boost.js +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/style/demo.html +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/conftest.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_bmad.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_configuration.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_discovery.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_hooks.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_info.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_intelligence.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_pkg.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_quality.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_taps.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_team.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_everyday_loop.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/make_fixture.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/smoke.sh +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_agents.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_ai.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_catalog.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_claude_settings.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_cliparse.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_config.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_dense.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_embed.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_errors_and_cli_table.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_frontmatter.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_gitutil.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_journal.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_lockfile.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_logs.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_mutation_hardening.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_output.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_paths.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_policy.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_rag.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_registry.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_spin.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_store.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_token_parity.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_util.py +0 -0
- {boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/unit/test_version.py +0 -0
|
@@ -18,7 +18,7 @@ version_tuple: tuple[int | str, ...]
|
|
|
18
18
|
commit_id: str | None
|
|
19
19
|
__commit_id__: str | None
|
|
20
20
|
|
|
21
|
-
__version__ = version = '1.0.
|
|
22
|
-
__version_tuple__ = version_tuple = (1, 0,
|
|
21
|
+
__version__ = version = '1.0.49'
|
|
22
|
+
__version_tuple__ = version_tuple = (1, 0, 49)
|
|
23
23
|
|
|
24
24
|
__commit_id__ = commit_id = None
|
|
@@ -116,7 +116,7 @@
|
|
|
116
116
|
<div class="stat"><b>4</b><span>Shipped</span></div>
|
|
117
117
|
<div class="stat"><b>3</b><span>Next up</span></div>
|
|
118
118
|
<div class="stat"><b>4</b><span>Planned</span></div>
|
|
119
|
-
<div class="stat"><b>
|
|
119
|
+
<div class="stat"><b>48</b><span>Loop finds</span></div>
|
|
120
120
|
</div>
|
|
121
121
|
</section>
|
|
122
122
|
|
|
@@ -1010,6 +1010,147 @@
|
|
|
1010
1010
|
</div>
|
|
1011
1011
|
</section>
|
|
1012
1012
|
|
|
1013
|
+
<!-- ============ SKILL-CONTENT TRUST & SAFETY ============ -->
|
|
1014
|
+
<section class="block reveal" id="trust">
|
|
1015
|
+
<div class="block-head">
|
|
1016
|
+
<h2>Skill-content trust & safety</h2>
|
|
1017
|
+
<span class="count">// planned · boost's core threat model — the third-party skills it installs run inside an agent</span>
|
|
1018
|
+
<span class="rule"></span>
|
|
1019
|
+
</div>
|
|
1020
|
+
<div class="rgrid">
|
|
1021
|
+
|
|
1022
|
+
<article class="cap rcard">
|
|
1023
|
+
<div class="head"><span class="pill planned">Planned</span><span class="cat">Security · Content</span></div>
|
|
1024
|
+
<h3>Prompt-injection scanning of skill Markdown</h3>
|
|
1025
|
+
<p>The highest-signal gap: boost installs Markdown an agent then <em>executes</em>,
|
|
1026
|
+
and nothing inspects that content. Scan skills for injection patterns —
|
|
1027
|
+
<em>"ignore previous instructions"</em>, data-exfiltration prompts,
|
|
1028
|
+
embedded <code>curl … | sh</code> — with free rule engines
|
|
1029
|
+
(<code>semgrep</code> custom rules, <code>garak</code>/<code>llm-guard</code>
|
|
1030
|
+
patterns) at tap and install time.</p>
|
|
1031
|
+
<div class="meta">
|
|
1032
|
+
<span class="m">Complexity <b>M</b></span>
|
|
1033
|
+
<span class="m hi">Impact <b>High</b></span>
|
|
1034
|
+
<span class="m">Wow <b class="wow">★★★★★</b></span>
|
|
1035
|
+
<span class="m">the core risk</span>
|
|
1036
|
+
</div>
|
|
1037
|
+
</article>
|
|
1038
|
+
|
|
1039
|
+
<article class="cap rcard">
|
|
1040
|
+
<div class="head"><span class="pill planned">Planned</span><span class="cat">Security · Integrity</span></div>
|
|
1041
|
+
<h3>Integrity verification — <code>boost verify</code></h3>
|
|
1042
|
+
<p>The lockfile already records a <code>sha256</code> per install via
|
|
1043
|
+
<code>util.sha256_dir</code>, but nothing ever re-checks it. A
|
|
1044
|
+
<code>verify</code> command (and a <code>doctor</code> gate) that
|
|
1045
|
+
re-hashes installed skills and flags drift turns that stored digest into
|
|
1046
|
+
actual tamper-detection — cheap, and built on machinery that already
|
|
1047
|
+
exists.</p>
|
|
1048
|
+
<div class="meta">
|
|
1049
|
+
<span class="m">Complexity <b>S</b></span>
|
|
1050
|
+
<span class="m hi">Impact <b>High</b></span>
|
|
1051
|
+
<span class="m">Wow <b class="wow">★★★★</b></span>
|
|
1052
|
+
<span class="m">reuses sha256_dir</span>
|
|
1053
|
+
</div>
|
|
1054
|
+
</article>
|
|
1055
|
+
|
|
1056
|
+
<article class="cap rcard">
|
|
1057
|
+
<div class="head"><span class="pill planned">Planned</span><span class="cat">Security · Provenance</span></div>
|
|
1058
|
+
<h3>Tap signing & provenance — Sigstore / minisign</h3>
|
|
1059
|
+
<p>A tap records its <code>commit</code> today but offers no cryptographic
|
|
1060
|
+
proof the content came from its claimed publisher, so a hijacked mirror
|
|
1061
|
+
can serve altered skills undetected. Verify a signature (Sigstore
|
|
1062
|
+
keyless or <code>minisign</code>) before trusting a tap — free, and the
|
|
1063
|
+
standard the wider ecosystem is converging on.</p>
|
|
1064
|
+
<div class="meta">
|
|
1065
|
+
<span class="m">Complexity <b>M</b></span>
|
|
1066
|
+
<span class="m">Impact <b>Med</b></span>
|
|
1067
|
+
<span class="m">Wow <b class="wow">★★★★</b></span>
|
|
1068
|
+
<span class="m">keyless OIDC</span>
|
|
1069
|
+
</div>
|
|
1070
|
+
</article>
|
|
1071
|
+
|
|
1072
|
+
<article class="cap rcard">
|
|
1073
|
+
<div class="head"><span class="pill planned">Planned</span><span class="cat">Security · Registry</span></div>
|
|
1074
|
+
<h3>Typosquat & name-confusion detection</h3>
|
|
1075
|
+
<p>The classic package-manager attack: a skill named one edit-distance from
|
|
1076
|
+
a popular one, or a familiar name that quietly resolves to an unexpected
|
|
1077
|
+
<code>owner/repo</code>. Flag near-duplicate names and owner mismatches
|
|
1078
|
+
at search and install time so a user can't fat-finger their way into a
|
|
1079
|
+
malicious skill.</p>
|
|
1080
|
+
<div class="meta">
|
|
1081
|
+
<span class="m">Complexity <b>M</b></span>
|
|
1082
|
+
<span class="m">Impact <b>Med</b></span>
|
|
1083
|
+
<span class="m">Wow <b class="wow">★★★★</b></span>
|
|
1084
|
+
<span class="m">edit-distance guard</span>
|
|
1085
|
+
</div>
|
|
1086
|
+
</article>
|
|
1087
|
+
|
|
1088
|
+
<article class="cap rcard">
|
|
1089
|
+
<div class="head"><span class="pill planned">Planned</span><span class="cat">Security · Supply chain</span></div>
|
|
1090
|
+
<h3>Update-diff before apply</h3>
|
|
1091
|
+
<p><code>boost update</code> overwrites installed skills in place. Show a
|
|
1092
|
+
content diff of what an upstream change alters — and require confirmation
|
|
1093
|
+
for anything that touches executable-looking instructions — so a poisoned
|
|
1094
|
+
update is <em>visible</em> instead of silent. The "review the diff" gate,
|
|
1095
|
+
applied to skills.</p>
|
|
1096
|
+
<div class="meta">
|
|
1097
|
+
<span class="m">Complexity <b>M</b></span>
|
|
1098
|
+
<span class="m">Impact <b>Med</b></span>
|
|
1099
|
+
<span class="m">Wow <b class="wow">★★★</b></span>
|
|
1100
|
+
<span class="m">no silent overwrites</span>
|
|
1101
|
+
</div>
|
|
1102
|
+
</article>
|
|
1103
|
+
|
|
1104
|
+
<article class="cap rcard">
|
|
1105
|
+
<div class="head"><span class="pill planned">Planned</span><span class="cat">Security · Secrets</span></div>
|
|
1106
|
+
<h3>Secret & PII scanning of installed skills</h3>
|
|
1107
|
+
<p>Point the round-2 secret scanners (<code>gitleaks</code>/<code>trufflehog</code>)
|
|
1108
|
+
at <em>third-party</em> skill content, not just boost's own repo — catching
|
|
1109
|
+
a skill that ships embedded credentials or, worse, one whose prompt
|
|
1110
|
+
coaxes the agent into harvesting the user's. Same free tools, a different
|
|
1111
|
+
and higher-stakes target.</p>
|
|
1112
|
+
<div class="meta">
|
|
1113
|
+
<span class="m">Complexity <b>S</b></span>
|
|
1114
|
+
<span class="m">Impact <b>Med</b></span>
|
|
1115
|
+
<span class="m">Wow <b class="wow">★★★</b></span>
|
|
1116
|
+
<span class="m">installed content</span>
|
|
1117
|
+
</div>
|
|
1118
|
+
</article>
|
|
1119
|
+
|
|
1120
|
+
<article class="cap rcard">
|
|
1121
|
+
<div class="head"><span class="pill planned">Planned</span><span class="cat">Security · Integrity</span></div>
|
|
1122
|
+
<h3>Lockfile enforcement & commit pinning</h3>
|
|
1123
|
+
<p>Promote the recorded <code>sha256</code> from a note to a rule: refuse to
|
|
1124
|
+
load a skill whose content has drifted from the lockfile, and let users
|
|
1125
|
+
pin a skill to an exact commit. The enforcement layer that makes the
|
|
1126
|
+
<code>verify</code> digest binding rather than advisory.</p>
|
|
1127
|
+
<div class="meta">
|
|
1128
|
+
<span class="m">Complexity <b>S</b></span>
|
|
1129
|
+
<span class="m">Impact <b>Med</b></span>
|
|
1130
|
+
<span class="m">Wow <b class="wow">★★★</b></span>
|
|
1131
|
+
<span class="m">pin to commit</span>
|
|
1132
|
+
</div>
|
|
1133
|
+
</article>
|
|
1134
|
+
|
|
1135
|
+
<article class="cap rcard">
|
|
1136
|
+
<div class="head"><span class="pill planned">Planned</span><span class="cat">Security · Policy</span></div>
|
|
1137
|
+
<h3>Capability manifest & least-privilege policy</h3>
|
|
1138
|
+
<p>Extend the existing <code>policy.py</code> so a skill declares the
|
|
1139
|
+
capabilities it expects — network, shell, file scope — and the user's
|
|
1140
|
+
policy allows or denies them. Turns install-time governance into
|
|
1141
|
+
least-privilege for the instructions an agent is about to run, the
|
|
1142
|
+
natural next step for a tool that already blocks installs by policy.</p>
|
|
1143
|
+
<div class="meta">
|
|
1144
|
+
<span class="m">Complexity <b>L</b></span>
|
|
1145
|
+
<span class="m">Impact <b>Med</b></span>
|
|
1146
|
+
<span class="m">Wow <b class="wow">★★★★</b></span>
|
|
1147
|
+
<span class="m">builds on policy.py</span>
|
|
1148
|
+
</div>
|
|
1149
|
+
</article>
|
|
1150
|
+
|
|
1151
|
+
</div>
|
|
1152
|
+
</section>
|
|
1153
|
+
|
|
1013
1154
|
<footer>
|
|
1014
1155
|
<p>Maintained by the boost quality loop · themed with
|
|
1015
1156
|
<a href="../style/boost.css">style/boost.css</a> ·
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/boost_skill_cli.egg-info/dependency_links.txt
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
{boost_skill_cli-1.0.47 → boost_skill_cli-1.0.49}/tests/functional/test_cli_configuration.py
RENAMED
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|
|
File without changes
|