From sciris
Uses Sciris utilities for merging dicts/lists, type conversion/checking, fuzzy matching, file downloads, shell commands, dynamic imports, pretty-printing, and debugging.
How this skill is triggered — by the user, by Claude, or both
Slash command
/sciris:sciris-utilsThe summary Claude sees in its skill listing — used to decide when to auto-load this skill
Reference for type handling, downloading, and other tools. See full tutorial: `docs/tutorials/tut_utils.ipynb`.
Reference for type handling, downloading, and other tools. See full tutorial: docs/tutorials/tut_utils.ipynb.
If you need more detail, use your MCP tools (Context7 or GitMCP) to look up current Sciris documentation, or consult the other Sciris skills.
def my_func(json=None, **kwargs):
default = dict(a=1, b=2)
output = sc.mergedicts(default, json, kwargs) # None inputs are OK
return output
sc.mergelists(['a', 'b'], 'c', None, {'d': 1}) # ['a', 'b', 'c', {'d': 1}]
sc.tolist('single') # ['single'] — safe to iterate
sc.tolist(['already']) # ['already'] — unchanged
sc.toarray(2) # array([2]) — handles scalars (np.array doesn't)
sc.toarray([1, 2, 3]) # array([1, 2, 3])
sc.cat(1, [2, 3], np.array([4, 5])) # array([1, 2, 3, 4, 5]) — concatenates
output = sc.autolist()
for item in data:
output += f'Result: {item}' # Appends automatically with +=
sc.isnumber(3) # True
sc.isnumber(3.14j) # True
sc.isnumber('3') # False
sc.suggest('Scirys', ['Python', 'NumPy', 'Sciris'], n=2) # ['Sciris']
data = sc.download(urls, save=False) # Download to memory (parallel)
sc.download(urls, save=True) # Download to disk
out = sc.runcommand('ls *.py', printoutput=True) # Use instead of Popen()
old = sc.importbypath('sim_v1/sim.py') # Import without sys.path
new = sc.importbypath('sim_v2/sim.py') # Two modules with same name
sc.help('interpol') # Search all Sciris source code
sc.help('interpol', context=True) # With surrounding context
sc.traceback() # Get exception traceback as string
sc.loadtext('file.py') # Load text file as string
sc.pp(obj) # Pretty-print any object
npx claudepluginhub sciris/scirisProvides code patterns for basic Sciris features: array operations like findinds, date-formatted plotting, objdict containers, object save/load, and parallelization.
Discovers and caches the public API of installed Python packages. Useful before writing code that uses an unfamiliar symbol or when verifying signatures against the installed version.
Teaches Pythonic idioms, PEP 8 style, type hints, and best practices for writing readable, maintainable Python code. Useful when writing or reviewing Python code and designing packages.