[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6ACPPC0QD8VMVCZTDF0ATNX":3,"skill-same:01M6ACPPC0QD8VMVCZTDF0ATNX":46},{"skillNo":4,"name":5,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":17,"publishedAt":19,"linkOnly":20,"markdownContent":21,"markdownBody":21,"frontMatter":22,"refName":23,"commitSha":24,"skillDirectory":25,"forksCount":26,"repositoryHtmlUrl":27,"repositoryHomepageUrl":28,"ownerHtmlUrl":29,"ownerBlogUrl":30,"ownerDescription":6,"updatedAt":31,"install":32,"resources":45},"01M6ACPPC0QD8VMVCZTDF0ATNX","manage-properties",null,"apache\u002Fofbiz-plugins","apache","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F47359?v=4","01M6AC83E6K4FDKK7HZ8WNMQKE","The Apache Software Foundation","01M6ACMJJ1Q4WYATY4GXZ2FAVD",178,"Apache-2.0","https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins\u002Fblob\u002Ftrunk\u002Fai-agent-skills\u002Fmanage-properties\u002FSKILL.md",[],[18],"manage properties","2026-11-10 10:12:30",false,"\u003C!--\nLicensed to the Apache Software Foundation (ASF) under one\nor more contributor license agreements.  See the NOTICE file\ndistributed with this work for additional information\nregarding copyright ownership.  The ASF licenses this file\nto you under the Apache License, Version 2.0 (the\n\"License\"); you may not use this file except in compliance\nwith the License.  You may obtain a copy of the License at\n\nhttp:\u002F\u002Fwww.apache.org\u002Flicenses\u002FLICENSE-2.0\n\nUnless required by applicable law or agreed to in writing,\nsoftware distributed under the License is distributed on an\n\"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\nKIND, either express or implied.  See the License for the\nspecific language governing permissions and limitations\nunder the License.\n-->\n\n---\nname: manage-properties\ndescription: Manage OFBiz application properties. Use for static .properties files or dynamic SystemProperty entity configurations.\n---\n\n# Skill: manage-properties\n## Goal\nDefine and access configuration settings in OFBiz using static property files or dynamic database records.\n\n## Triggers\n**ALWAYS** read this skill when:\n- Adding new configuration keys to a component.\n- Overriding core OFBiz settings.\n- Accessing properties from Java, Groovy, or XML.\n\n## Use when\n- Defining static defaults in `config\u002F` directory.\n- Creating runtime-configurable settings in `SystemProperty` entity.\n- Using `UtilProperties` to retrieve values.\n\n## Procedure\n1. **Static Properties (`.properties` files)**:\n    - Create\u002FEdit files in component's `config\u002F` directory.\n    - Path: `plugins\u002Fmycomponent\u002Fconfig\u002Fmycomponent.properties`.\n    - Access via Java: `UtilProperties.getPropertyValue(\"mycomponent\", \"my.key\")`.\n2. **Dynamic Properties (`SystemProperty` entity)**:\n    - Define in data XML files.\n    - Fields: `systemResourceId` (matches file basename), `systemPropertyId` (key), `systemPropertyValue` (value).\n    - Advantage: Can be updated via DB\u002FUI without restart.\n3. **Overriding Core Properties**:\n    - Avoid editing core framework property files.\n    - Use `SystemProperty` records to override static values if the logic checks DB first (standard OFBiz practice).\n\n## Guardrails\n- **Uniqueness**: Prefix property keys with component name to avoid collisions (e.g., `shop.order.limit`).\n- **Basename**: `systemResourceId` must match the `.properties` file name if providing dynamic overrides for static defaults.\n\n## Examples\n**Example: Static Property File (`myplugin.properties`)**\n```properties\n# Cache setting for the plugin\nmyplugin.cache.enabled=true\nmyplugin.max.items=50\n```\n\n**Example: Dynamic Overrides (Data XML)**\n```xml\n\u003Centity-engine-xml>\n    \u003C!-- Override the static default at runtime -->\n    \u003CSystemProperty systemResourceId=\"myplugin\" systemPropertyId=\"myplugin.max.items\" \n                    systemPropertyValue=\"100\" description=\"Maximum items override\"\u002F>\n\u003C\u002Fentity-engine-xml>\n```\n\n**Example: Accessing in Java**\n```java\nimport org.apache.ofbiz.base.util.UtilProperties;\n\n\u002F\u002F Retrieves from DB if exists, else from myplugin.properties\nString maxItems = UtilProperties.getPropertyValue(\"myplugin\", \"myplugin.max.items\", \"50\");\n```\n",{},"trunk","6c6c27710443de03e9247605d33a2e2f5bc3d1e2","ai-agent-skills\u002Fmanage-properties",222,"https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins","https:\u002F\u002Fofbiz.apache.org\u002F","https:\u002F\u002Fgithub.com\u002Fapache","https:\u002F\u002Fwww.apache.org\u002F","2026-11-10 15:50:39",{"source":7,"skillName":5,"commands":33,"prompt":43,"zipAvailable":44},[34,37,40],{"tool":35,"command":36},"npx","npx skills add apache\u002Fofbiz-plugins --skill manage-properties",{"tool":38,"command":39},"bunx","bunx skills add apache\u002Fofbiz-plugins --skill manage-properties",{"tool":41,"command":42},"pnpm","pnpm dlx skills add apache\u002Fofbiz-plugins --skill manage-properties","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins\u002Fblob\u002Ftrunk\u002Fai-agent-skills\u002Fmanage-properties\u002FSKILL.md",true,[],[47,54,61,68,75,82],{"skillNo":48,"name":49,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":50,"categories":51,"keywords":52,"publishedAt":19},"01M6ACQSN90YKJZ92MQ52D9R8H","prepush-readiness","https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins\u002Fblob\u002Ftrunk\u002Fai-agent-skills\u002Fprepush-readiness\u002FSKILL.md",[],[53],"prepush readiness",{"skillNo":55,"name":56,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":57,"categories":58,"keywords":59,"publishedAt":19},"01M6ACQPR1WRA751V4DXVC3AHF","manage-webapps","https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins\u002Fblob\u002Ftrunk\u002Fai-agent-skills\u002Fmanage-webapps\u002FSKILL.md",[],[60],"manage webapps",{"skillNo":62,"name":63,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":64,"categories":65,"keywords":66,"publishedAt":19},"01M6ACQMCX8Z7NY2CE08NCV6ND","manage-themes","https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins\u002Fblob\u002Ftrunk\u002Fai-agent-skills\u002Fmanage-themes\u002FSKILL.md",[],[67],"manage themes",{"skillNo":69,"name":70,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":19},"01M6ACQHYN20AFWF6TKK4RGQ8A","manage-tests","https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins\u002Fblob\u002Ftrunk\u002Fai-agent-skills\u002Fmanage-tests\u002FSKILL.md",[],[74],"manage tests",{"skillNo":76,"name":77,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":80,"publishedAt":19},"01M6ACQFRMW7R45YD3HRAXPGWF","manage-templates","https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins\u002Fblob\u002Ftrunk\u002Fai-agent-skills\u002Fmanage-templates\u002FSKILL.md",[],[81],"manage templates",{"skillNo":83,"name":84,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":7,"ownerLogin":8,"ownerAvatarUrl":9,"ownerAccountNo":10,"ownerDisplayName":11,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":85,"categories":86,"keywords":87,"publishedAt":19},"01M6ACQCSSDZQMD8VX2K3WRR93","manage-strategies","https:\u002F\u002Fgithub.com\u002Fapache\u002Fofbiz-plugins\u002Fblob\u002Ftrunk\u002Fai-agent-skills\u002Fmanage-strategies\u002FSKILL.md",[],[88],"manage strategies"]