[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6X1ENCM9KBYX06C0RT94JB2":3,"skill-same:01M6X1ENCM9KBYX06C0RT94JB2":77},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":56,"commitSha":57,"skillDirectory":58,"forksCount":14,"repositoryHtmlUrl":59,"repositoryHomepageUrl":60,"ownerHtmlUrl":61,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":62,"install":63,"resources":76},"01M6X1ENCM9KBYX06C0RT94JB2","feature-engineering",null,"Feature engineering for ML — encoding, imputation, scaling, selection, time-series features. Use when preparing data for an ML model, encoding categoricals, handling missing data, building time-series features, or selecting features from a wide table.","projectious-work\u002Fprocesskit","projectious-work","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F263889726?v=4","01M6N97TJJ118WQ35CHRV8RD0E","projectious.work","01M6N97TPWJPF0BMKYQ4PBY5W8",0,"MIT","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Farchive\u002Fprocesskit-install-20261101\u002Fcontext\u002Ftemplates\u002Fprocesskit\u002Fv0.23.0\u002Fcontext\u002Fskills\u002Fdata-ai\u002Ffeature-engineering\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000033","数据分析师","PROFESSION","适用职业",[24,25,26,27,28,29,30,31,32,33,34,35,36,5,37,38,39,40,41,42],"feature engineering","engineering","feature","when","ml","features","for","v1","wide","missing","series","time-series","scaling","time","selection","use","work","model","encoding","2026-11-10 10:12:30",false,"---\nname: feature-engineering\ndescription: |\n  Feature engineering for ML — encoding, imputation, scaling, selection, time-series features. Use when preparing data for an ML model, encoding categoricals, handling missing data, building time-series features, or selecting features from a wide table.\nmetadata:\n  processkit:\n    apiVersion: processkit.projectious.work\u002Fv1\n    id: SKILL-feature-engineering\n    version: \"1.1.0\"\n    created: 2026-04-06T00:00:00Z\n    category: data-ai\n---\n\n# Feature Engineering\n\n## Intro\n\nGood features beat clever models. Encode categoricals by cardinality,\nimpute missing data with mechanism in mind, scale only when the model\nneeds it, and wrap everything in a sklearn Pipeline so you cannot leak\nthe test set.\n\n## Overview\n\n### Encoding categoricals\n\n- **One-hot** for nominal categories with \u003C 15 unique values; use\n  `drop_first=True` to avoid multicollinearity.\n- **Ordinal** for natural order (low\u002Fmedium\u002Fhigh). Map explicitly —\n  never rely on alphabetical sort.\n- **Target encoding** for high-cardinality nominals (city, zip).\n  Replace with mean target value, always with cross-validated\n  encoding to prevent leakage.\n- **Frequency encoding** when category count or proportion is itself\n  predictive (popular products).\n- **Never label-encode nominals** — it implies false ordinal\n  relationships.\n\n### Handling missing data\n\nUnderstand the mechanism first: MCAR, MAR, or MNAR. Numerical\nimputation: median (robust to outliers) or mean (preserves\ndistribution mean), with a binary `_is_missing` indicator if\nmissingness may be informative. Categorical imputation: mode for\nlow-cardinality, or treat missing as its own `\"unknown\"` category.\nAdvanced: KNN or iterative (MICE) imputation when features are\ncorrelated. Drop rows only when \u003C 5% are affected and missingness is\nMCAR. Always fit imputers on training data only.\n\n### Feature scaling\n\n- **StandardScaler** (z-score) — linear regression, SVM, PCA\n- **MinMaxScaler** (0–1) — neural networks, bounded range\n  requirements; sensitive to outliers\n- **RobustScaler** (IQR-based) — when outliers are present\n- **No scaling needed** for tree-based models (Random Forest,\n  XGBoost)\n\nAlways fit on training data only and apply the same transform to\ntest data.\n\n### Feature selection\n\nFilter methods (correlation, mutual information, chi-square) are\nfast but ignore interactions. Wrapper methods (RFE, forward\u002Fbackward)\nconsider combinations but are expensive. Embedded methods (Lasso,\ntree importance, permutation importance) are the best\nspeed\u002Faccuracy balance. Remove zero-variance features first. Drop\none of each highly correlated pair (r > 0.9). Use domain knowledge\nas the first filter before data-driven methods.\n\n### Time-series features\n\n- **Lag features** — `value_lag_1`, `value_lag_7`, `value_lag_30`\n  chosen by domain seasonality\n- **Rolling statistics** — `value_rolling_mean_7d`, std, min, max\n  over windows matching the pattern\n- **Seasonal features** — `hour_of_day`, `day_of_week`, `month`,\n  `is_weekend`, `is_holiday`; encode cyclical features as\n  `sin(2*pi*hour\u002F24)` and matching cosine\n- **Difference features** — period-over-period change, percent change\n- **Expanding statistics** — cumulative mean, sum, count\n\nRespect temporal ordering — never use future values as features.\n\n### Avoiding data leakage\n\nNever compute features using information from the test set. Fit all\ntransformers (scaler, imputer, encoder) on training data only. For\ntime series, features must use only data available at prediction\ntime. Target encoding must use cross-validation folds, never the\nfull training set. Wrap preprocessing in `sklearn.pipeline.Pipeline`\nto enforce ordering.\n\n## Gotchas\n\nAgent-specific failure modes — provider-neutral pause-and-self-check items:\n\n- **Fitting transformers on the full dataset before splitting.** Fitting a scaler, imputer, or target encoder on train + test leaks test-set statistics into the model. Fit all transformers on training data only, then transform test data with the training-fitted transformer.\n- **Target encoding without cross-validation.** Replacing a categorical with its mean target value on the same fold creates direct leakage: the model learns to associate the target with... the target. Use cross-validated target encoding where each fold is encoded using only the other folds' statistics.\n- **Label-encoding nominal categories.** Label encoding implies an ordinal relationship (e.g., `Red=0, Blue=1, Green=2` implies `Green > Blue > Red`). Linear models and neural networks will learn a false ordering. Use one-hot or target encoding for nominals with no natural order.\n- **Time-series features that peek at future data.** A lag-3 feature computed from row `t` includes data from rows `t+1`, `t+2`, `t+3` if the DataFrame is sorted descending. Verify temporal direction and always use only data available at prediction time.\n- **Applying MinMaxScaler when the test set contains values outside the training range.** MinMaxScaler clips values to `[0, 1]` based on training min\u002Fmax. Out-of-range test values produce values outside `[0, 1]` or are clipped, corrupting the distribution. Use RobustScaler or StandardScaler for data with outliers or uncertain ranges.\n- **Polynomial feature expansion on all features \"to be safe\".** Degree-2 expansion on 100 features produces ~5,000 features. Most of these will be noise, increasing training time and overfitting risk dramatically. Use polynomial features only for specific known non-linear relationships.\n- **Feature selection before splitting.** Running mutual information or correlation-based selection on the full dataset lets test-set information guide which features are retained. Select features using only training data, ideally inside a sklearn Pipeline.\n\n## Full reference\n\n### Text features\n\n- **TF-IDF** — baseline text representation; use `max_features` to\n  cap dimensionality. Strong with traditional ML classifiers.\n- **Count vectorizer** — simpler than TF-IDF when raw frequency is\n  enough.\n- **Embeddings** — pre-trained sentence-transformers for semantic\n  similarity; superior for nuance, more expensive.\n- **Extracted features** — text length, word count, punctuation\n  count, sentiment score, readability. Often more interpretable\n  than bag-of-words.\n\nCombine TF-IDF + extracted features for a strong baseline before\nreaching for embeddings.\n\n### Interaction and derived features\n\n- Interaction terms for known relationships (`price * quantity =\n  revenue`)\n- Ratio features (`clicks \u002F impressions`, `revenue \u002F users`)\n- Polynomial features sparingly (degree 2 max), only for known\n  non-linear relationships\n- Binning continuous → categorical when the relationship is\n  step-wise (age groups, income brackets); use domain-driven bins,\n  not arbitrary quantiles\n- Log transform right-skewed features (income, prices, counts)\n\n### Worked examples\n\n- **user_id, city, purchase_amount, timestamp:** Cross-validated\n  target encoding on city; extract day_of_week, hour, is_weekend\n  from timestamp; lag features per user; rolling 7- and 30-day\n  purchase means; days_since_last_purchase. Wrap in a sklearn\n  Pipeline.\n- **200 features, poor performance:** Drop zero-variance and\n  near-constant columns, drop one of each correlated pair (r > 0.9),\n  rank with permutation importance on the baseline, retrain on top\n  30–50, compare. Audit remaining features for leakage.\n- **40% missing income:** Investigate MAR via correlation with\n  other features. Add `income_is_missing` indicator. Impute median\n  from the training set (robust to skew). Compare model performance\n  to KNN imputation as an alternative.\n\n### Anti-patterns\n\n- Fitting a scaler or encoder on the full dataset before splitting\n- Target encoding without cross-validation (silent leakage)\n- Label-encoding nominal categories\n- Imputing nulls with column mean computed across train + test\n- Time-series features that peek at future timestamps\n- Polynomial expansion of every feature \"to be safe\"\n","# Feature Engineering\n\n## Intro\n\nGood features beat clever models. Encode categoricals by cardinality,\nimpute missing data with mechanism in mind, scale only when the model\nneeds it, and wrap everything in a sklearn Pipeline so you cannot leak\nthe test set.\n\n## Overview\n\n### Encoding categoricals\n\n- **One-hot** for nominal categories with \u003C 15 unique values; use\n  `drop_first=True` to avoid multicollinearity.\n- **Ordinal** for natural order (low\u002Fmedium\u002Fhigh). Map explicitly —\n  never rely on alphabetical sort.\n- **Target encoding** for high-cardinality nominals (city, zip).\n  Replace with mean target value, always with cross-validated\n  encoding to prevent leakage.\n- **Frequency encoding** when category count or proportion is itself\n  predictive (popular products).\n- **Never label-encode nominals** — it implies false ordinal\n  relationships.\n\n### Handling missing data\n\nUnderstand the mechanism first: MCAR, MAR, or MNAR. Numerical\nimputation: median (robust to outliers) or mean (preserves\ndistribution mean), with a binary `_is_missing` indicator if\nmissingness may be informative. Categorical imputation: mode for\nlow-cardinality, or treat missing as its own `\"unknown\"` category.\nAdvanced: KNN or iterative (MICE) imputation when features are\ncorrelated. Drop rows only when \u003C 5% are affected and missingness is\nMCAR. Always fit imputers on training data only.\n\n### Feature scaling\n\n- **StandardScaler** (z-score) — linear regression, SVM, PCA\n- **MinMaxScaler** (0–1) — neural networks, bounded range\n  requirements; sensitive to outliers\n- **RobustScaler** (IQR-based) — when outliers are present\n- **No scaling needed** for tree-based models (Random Forest,\n  XGBoost)\n\nAlways fit on training data only and apply the same transform to\ntest data.\n\n### Feature selection\n\nFilter methods (correlation, mutual information, chi-square) are\nfast but ignore interactions. Wrapper methods (RFE, forward\u002Fbackward)\nconsider combinations but are expensive. Embedded methods (Lasso,\ntree importance, permutation importance) are the best\nspeed\u002Faccuracy balance. Remove zero-variance features first. Drop\none of each highly correlated pair (r > 0.9). Use domain knowledge\nas the first filter before data-driven methods.\n\n### Time-series features\n\n- **Lag features** — `value_lag_1`, `value_lag_7`, `value_lag_30`\n  chosen by domain seasonality\n- **Rolling statistics** — `value_rolling_mean_7d`, std, min, max\n  over windows matching the pattern\n- **Seasonal features** — `hour_of_day`, `day_of_week`, `month`,\n  `is_weekend`, `is_holiday`; encode cyclical features as\n  `sin(2*pi*hour\u002F24)` and matching cosine\n- **Difference features** — period-over-period change, percent change\n- **Expanding statistics** — cumulative mean, sum, count\n\nRespect temporal ordering — never use future values as features.\n\n### Avoiding data leakage\n\nNever compute features using information from the test set. Fit all\ntransformers (scaler, imputer, encoder) on training data only. For\ntime series, features must use only data available at prediction\ntime. Target encoding must use cross-validation folds, never the\nfull training set. Wrap preprocessing in `sklearn.pipeline.Pipeline`\nto enforce ordering.\n\n## Gotchas\n\nAgent-specific failure modes — provider-neutral pause-and-self-check items:\n\n- **Fitting transformers on the full dataset before splitting.** Fitting a scaler, imputer, or target encoder on train + test leaks test-set statistics into the model. Fit all transformers on training data only, then transform test data with the training-fitted transformer.\n- **Target encoding without cross-validation.** Replacing a categorical with its mean target value on the same fold creates direct leakage: the model learns to associate the target with... the target. Use cross-validated target encoding where each fold is encoded using only the other folds' statistics.\n- **Label-encoding nominal categories.** Label encoding implies an ordinal relationship (e.g., `Red=0, Blue=1, Green=2` implies `Green > Blue > Red`). Linear models and neural networks will learn a false ordering. Use one-hot or target encoding for nominals with no natural order.\n- **Time-series features that peek at future data.** A lag-3 feature computed from row `t` includes data from rows `t+1`, `t+2`, `t+3` if the DataFrame is sorted descending. Verify temporal direction and always use only data available at prediction time.\n- **Applying MinMaxScaler when the test set contains values outside the training range.** MinMaxScaler clips values to `[0, 1]` based on training min\u002Fmax. Out-of-range test values produce values outside `[0, 1]` or are clipped, corrupting the distribution. Use RobustScaler or StandardScaler for data with outliers or uncertain ranges.\n- **Polynomial feature expansion on all features \"to be safe\".** Degree-2 expansion on 100 features produces ~5,000 features. Most of these will be noise, increasing training time and overfitting risk dramatically. Use polynomial features only for specific known non-linear relationships.\n- **Feature selection before splitting.** Running mutual information or correlation-based selection on the full dataset lets test-set information guide which features are retained. Select features using only training data, ideally inside a sklearn Pipeline.\n\n## Full reference\n\n### Text features\n\n- **TF-IDF** — baseline text representation; use `max_features` to\n  cap dimensionality. Strong with traditional ML classifiers.\n- **Count vectorizer** — simpler than TF-IDF when raw frequency is\n  enough.\n- **Embeddings** — pre-trained sentence-transformers for semantic\n  similarity; superior for nuance, more expensive.\n- **Extracted features** — text length, word count, punctuation\n  count, sentiment score, readability. Often more interpretable\n  than bag-of-words.\n\nCombine TF-IDF + extracted features for a strong baseline before\nreaching for embeddings.\n\n### Interaction and derived features\n\n- Interaction terms for known relationships (`price * quantity =\n  revenue`)\n- Ratio features (`clicks \u002F impressions`, `revenue \u002F users`)\n- Polynomial features sparingly (degree 2 max), only for known\n  non-linear relationships\n- Binning continuous → categorical when the relationship is\n  step-wise (age groups, income brackets); use domain-driven bins,\n  not arbitrary quantiles\n- Log transform right-skewed features (income, prices, counts)\n\n### Worked examples\n\n- **user_id, city, purchase_amount, timestamp:** Cross-validated\n  target encoding on city; extract day_of_week, hour, is_weekend\n  from timestamp; lag features per user; rolling 7- and 30-day\n  purchase means; days_since_last_purchase. Wrap in a sklearn\n  Pipeline.\n- **200 features, poor performance:** Drop zero-variance and\n  near-constant columns, drop one of each correlated pair (r > 0.9),\n  rank with permutation importance on the baseline, retrain on top\n  30–50, compare. Audit remaining features for leakage.\n- **40% missing income:** Investigate MAR via correlation with\n  other features. Add `income_is_missing` indicator. Impute median\n  from the training set (robust to skew). Compare model performance\n  to KNN imputation as an alternative.\n\n### Anti-patterns\n\n- Fitting a scaler or encoder on the full dataset before splitting\n- Target encoding without cross-validation (silent leakage)\n- Label-encoding nominal categories\n- Imputing nulls with column mean computed across train + test\n- Time-series features that peek at future timestamps\n- Polynomial expansion of every feature \"to be safe\"\n",{"name":5,"metadata":48,"description":55},{"processkit":49},{"id":50,"created":51,"version":52,"category":53,"apiVersion":54},"SKILL-feature-engineering",1775433600000,"1.1.0","data-ai","processkit.projectious.work\u002Fv1","Feature engineering for ML — encoding, imputation, scaling, selection, time-series features. Use when preparing data for an ML model, encoding categoricals, handling missing data, building time-series features, or selecting features from a wide table.\n","main","4876a92620ee792aac2ac9a1a806322d8a572367","archive\u002Fprocesskit-install-20261101\u002Fcontext\u002Ftemplates\u002Fprocesskit\u002Fv0.23.0\u002Fcontext\u002Fskills\u002Fdata-ai\u002Ffeature-engineering","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit","https:\u002F\u002Fprojectious-work.github.io\u002Fprocesskit\u002F","https:\u002F\u002Fgithub.com\u002Fprojectious-work","2026-11-11 23:24:18",{"source":8,"skillName":5,"commands":64,"prompt":74,"zipAvailable":75},[65,68,71],{"tool":66,"command":67},"npx","npx skills add projectious-work\u002Fprocesskit --skill feature-engineering",{"tool":69,"command":70},"bunx","bunx skills add projectious-work\u002Fprocesskit --skill feature-engineering",{"tool":72,"command":73},"pnpm","pnpm dlx skills add projectious-work\u002Fprocesskit --skill feature-engineering","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Farchive\u002Fprocesskit-install-20261101\u002Fcontext\u002Ftemplates\u002Fprocesskit\u002Fv0.23.0\u002Fcontext\u002Fskills\u002Fdata-ai\u002Ffeature-engineering\u002FSKILL.md",true,[],[78,104,124,145,162,180],{"skillNo":79,"name":80,"nameZh":6,"description":81,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":82,"categories":83,"keywords":89,"publishedAt":43},"01M6X5MTC89B4ZGXW3JVSQCPF8","skill-management","Manage Skill package manifests as v1 ontology entities.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fskill-management\u002FSKILL.md",[84],{"categoryNo":85,"categoryName":86,"taxonomyType":87,"taxonomyTypeDesc":88},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[90,91,92,93,94,95,40,96,97,98,80,99,100,101,31,102,103],"management","skill management","create","update","package","alpha","list","manage","ontology","get","as","manifests","skill package","transition",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":111,"publishedAt":43},"01M6X5MCV74NHW5MEDNHZRF2C8","schema-management","Manage generated processkit schema contracts through deterministic MCP rebuild and inspection workflows.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fschema-management\u002FSKILL.md",[110],{"categoryNo":85,"categoryName":86,"taxonomyType":87,"taxonomyTypeDesc":88},[90,112,113,114,115,116,95,40,117,118,97,119,120,121,99,122,123],"schema","schema management","MCP","workflows","validation","generated","rebuild","contracts","wed","deterministic","contract","mode",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":130,"publishedAt":43},"01M6X5M5G6YJ96AMZGSCZJ1D13","proposition-management","Record claims, risks, beliefs, world facts, WSJF estimates, and assumptions through the Proposition interface.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fproposition-management\u002FSKILL.md",[],[90,131,132,92,93,133,95,40,134,135,136,137,99,138,139,140,141,142,143,144],"proposition","proposition management","index","log","world","record","query","creation","event","interface","updates","facts","claims","WSJF",{"skillNo":146,"name":147,"nameZh":6,"description":148,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":149,"categories":150,"keywords":151,"publishedAt":43},"01M6X5KMQ83QN9M6MPWZM7344F","ontology-management","Manage generated v1 ontology entities that do not require a dedicated domain server.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fontology-management\u002FSKILL.md",[],[90,98,152,92,95,153,154,117,155,134,97,156,157,99,158,159,139,160,31,161],"ontology management","lifecycle","archive","roadmap","do","domain","iteration","keep","measurement","generic",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":43},"01M6X5KCY2DN3SM21RERSFNEBT","okf-compatibility","Import, export, and validate conformant Open Knowledge Format bundles.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fokf-compatibility\u002FSKILL.md",[],[169,170,171,172,95,173,174,175,40,176,177,178,179],"okf","compatibility","okf compatibility","validate","open","knowledge","format","export","bundles","bundle","import",{"skillNo":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":186,"publishedAt":43},"01M6X5JA8S5PNGJVFW4EQY8T83","capability-management","Manage versioned Capability entities and their governed lifecycle.","https:\u002F\u002Fgithub.com\u002Fprojectious-work\u002Fprocesskit\u002Fblob\u002Fmain\u002Fsrc\u002Fcontext\u002Fskills\u002Fprocesskit\u002Fcapability-management\u002FSKILL.md",[],[90,187,188,92,93,133,95,153,40,96,134,189,97,136,99,159,139,140,190,103],"capability","capability management","queries","changes"]