github Python analyzed 40afe81 deep scan unknown

srinitude/skills

github

All of my portable Agent Skills with local validation and MCP access

maintainer
srinitude
licence
MIT
first seen
2026-07-20
last seen
2026-09-08
releases · 30d
0
short id

Drift inferred · capture-to-capture

  1. HIGH code analysis flagged dynamic code execution ×5 in srinitude/skills
  2. HIGH code analysis flagged dynamic code execution ×5 in srinitude/skills
  3. HIGH code analysis flagged dynamic code execution ×2 in srinitude/skills
  4. HIGH code analysis flagged dynamic code execution ×2 in srinitude/skills
  5. HIGH code analysis flagged dynamic code execution ×2 in srinitude/skills
  6. HIGH code analysis flagged dynamic code execution ×2 in srinitude/skills
  7. HIGH code analysis flagged dynamic code execution ×2 in srinitude/skills
  8. HIGH code analysis flagged dynamic code execution ×2 in srinitude/skills
  9. HIGH code analysis flagged dynamic code execution ×2 in srinitude/skills
  10. HIGH code analysis flagged dynamic code execution in srinitude/skills
  11. HIGH code analysis flagged dynamic code execution in srinitude/skills
  12. HIGH code analysis flagged dynamic code execution in srinitude/skills
capabilities 6 tools
transport stdio counts 6 tools · 0 res · 0 prompts permission surface via code analysis

tools

  • get_eval_manifest
  • get_reference
  • get_skill
  • list_skills
  • search_skills
  • validate_skill
skills & danger signals github-tarball
prompt-surface shipped agent-instruction files + hidden-content / dangerous-code findings — quoted from the analyzed source

analyzed commit 40afe81 · analyzer v33 · 1d ago

skills & prompt files 23

danger signals5

code evidence vv0.1.4 · github-tarball
evidence-backed findings quoted directly from the published source artifact — not inferred

code files: 825

filesystem 207

  • fs srinitude-skills-40afe81/__init__.py :2 from pathlib import Path
  • fs srinitude-skills-40afe81/adapters/shared-skills/check_destination.py :9 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/check_code_rules.py :21 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/check_evals.py :20 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/check_placeholders.py :23 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/dedupe.py :18 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/lib/adapters.py :3 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/lint_writing.py :25 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/skill_info.py :19 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/tests/test_ci_contract.py :9 import pathlib
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/tests/test_dedupe.py :3 import pathlib
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/tests/test_scripts.py :3 import pathlib
show 28 more
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/tests/test_skill_cache.py :3 import pathlib
  • fs (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/validate_skill.py :18 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/mobile-first-website-design/native/scripts/prompt_corpus.py :10 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/mobile-first-website-design/native/scripts/validate_packet.py :9 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/prompt-enhancer/native/scripts/check_delivery.py :71 with open(sys.argv[1], "r", encoding="utf-8", errors="replace") as handle:
  • fs (weak) srinitude-skills-40afe81/evidence/ports/prompt-enhancer/native/scripts/check_prompt.py :88 with open(sys.argv[1], "r", encoding="utf-8", errors="replace") as handle:
  • fs (weak) srinitude-skills-40afe81/evidence/ports/prompt-enhancer/native/scripts/check_prose.py :156 with open(sys.argv[1], "r", encoding="utf-8", errors="replace") as handle:
  • fs (weak) srinitude-skills-40afe81/evidence/ports/prompt-enhancer/native/scripts/scan_secrets.py :72 with open(sys.argv[1], "r", encoding="utf-8", errors="replace") as handle:
  • fs (weak) srinitude-skills-40afe81/evidence/ports/visual-design-system-extractor/native/scripts/schema_tools.py :28 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/evidence/ports/visual-design-system-extractor/native/scripts/validate_design_system_yaml.py :32 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/agentic_request_contract.py :4 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_code_rules.py :21 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_decision_records.py :19 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_domain_research.py :19 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_evals.py :20 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_improvement_contract.py :18 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_invocation_receipt.py :19 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_mise_primitives.py :12 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_placeholders.py :23 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_primitive_lifecycle.py :12 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_task_graph.py :19 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_use_case_contract.py :18 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/lint_writing.py :25 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/run_agentic_request.py :25 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/sync_mise_primitives.py :16 from pathlib import Path
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/tests/test_ci_contract.py :2 import pathlib
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/tests/test_current_anchor.py :4 import pathlib
  • fs (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/tests/test_source_mapping.py :3 import pathlib

167 more not shown — this panel samples each group; the count above is the real total.

shell / exec 116

  • shell srinitude-skills-40afe81/evidence/ports/always-current-datetime/current-anchor.native.py :6 import subprocess
  • shell (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/tests/test_dedupe.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/tests/test_scripts.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/tests/test_skill_cache.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/run_agentic_request.py :23 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/sync_mise_primitives.py :12 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/tests/test_current_anchor.py :5 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/run_agentic_request.py :23 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/sync_mise_primitives.py :12 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_bench.py :11 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_crafts.py :69 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_disciplines.py :14 import subprocess
show 28 more
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_gate.py :13 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_ledger.py :11 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_locate.py :12 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_scripts.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_slice.py :13 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_speak.py :11 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/by-design/scripts/tests/test_yamlread.py :11 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/dedupe/scripts/run_agentic_request.py :23 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/dedupe/scripts/sync_mise_primitives.py :12 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/dedupe/scripts/tests/test_dedupe.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/dedupe/scripts/tests/test_scripts.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/dedupe/scripts/tests/test_skill_cache.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/build_examples.py :34 return subprocess.run([sys.executable, str(PIPELINE), *map(str, args)],
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/run_design_agentic_request.py :11 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/sync_mise_primitives.py :7 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/pipeline_test_support.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_ci_contract.py :11 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_context_routing.py :5 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_design_agentic_request.py :5 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_markdown_semantics.py :3 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_proof_ladder.py :5 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_review_contract.py :13 return subprocess.run([sys.executable, str(SCRIPT), "start", "--intake",
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_run_completion.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_scripts.py :5 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_section_support.py :6 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_select_rules.py :4 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_skill_body.py :5 import subprocess
  • shell (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/tests/test_skill_format.py :5 import subprocess

76 more not shown — this panel samples each group; the count above is the real total.

network 50

  • net (weak) srinitude-skills-40afe81/evidence/ports/dedupe/native/scripts/lib/adapters.py :4 from urllib.parse import parse_qsl, urlencode, urlsplit, urlunsplit
  • net (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/always-current-datetime/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/by-design/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/by-design/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/dedupe/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/dedupe/scripts/lib/adapters.py :4 from urllib.parse import parse_qsl, urlencode, urlsplit, urlunsplit
  • net (weak) srinitude-skills-40afe81/skills/dedupe/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/lib/design_policy_research.py :3 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/design-like-im-5/scripts/sync_mise_primitives.py :9 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/dtcg-tokens/scripts/lib/dtcg_resolution.py :4 from urllib.parse import unquote
  • net (weak) srinitude-skills-40afe81/skills/dtcg-tokens/scripts/lib/token_policy_research.py :3 from urllib.parse import urlparse
show 28 more
  • net (weak) srinitude-skills-40afe81/skills/dtcg-tokens/scripts/prepare_google_fonts.py :8 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/dtcg-tokens/scripts/sync_mise_primitives.py :9 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/figma-code-connect-design-system/scripts/lib/factory_checks.py :7 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/figma-code-connect-design-system/scripts/sync_mise_primitives.py :9 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/goal-prompt/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/goal-prompt/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/logic-audit/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/logic-audit/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/meaning-preserving-rewrite/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/meaning-preserving-rewrite/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/mobile-first-website-design/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/mobile-first-website-design/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/only-one-interpretation/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/only-one-interpretation/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/outcome-bounded-work/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/outcome-bounded-work/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/prompt-enhancer/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/prompt-enhancer/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/reify/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/reify/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/simplify-skill/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/simplify-skill/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/skill-factory/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/skill-factory/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/skill-factory/scripts/variant_plan.py :4 from urllib.parse import urlsplit
  • net (weak) srinitude-skills-40afe81/skills/starting-point/scripts/check_domain_research.py :20 from urllib.parse import urlparse
  • net (weak) srinitude-skills-40afe81/skills/starting-point/scripts/sync_mise_primitives.py :14 import urllib.error
  • net (weak) srinitude-skills-40afe81/skills/timebox/scripts/check_domain_research.py :20 from urllib.parse import urlparse

10 more not shown — this panel samples each group; the count above is the real total.

tool registrations 6

  • list_skills srinitude-skills-40afe81/mcp/src/tools.ts :49
  • search_skills srinitude-skills-40afe81/mcp/src/tools.ts :57
  • get_skill srinitude-skills-40afe81/mcp/src/tools.ts :76
  • get_reference srinitude-skills-40afe81/mcp/src/tools.ts :105
  • get_eval_manifest srinitude-skills-40afe81/mcp/src/tools.ts :120
  • validate_skill srinitude-skills-40afe81/mcp/src/tools.ts :132