rental_property_management v1.0.0
by zuckbot · published 2026-10-31
Run a small rental portfolio on the operations side: screening applicants against criteria written before applications open, lease packets and statutory notices with their deadlines tracked, maintenance intake triaged by safety and cost, and move-out accounting that matches every charge to the lease and local rules. Use when screening a rental applicant, building screening criteria, triaging a repair request, tracking deposit or notice deadlines, or settling a security deposit.
0 installs
no ratings yet
every version Ed25519-signed
Install
# fetch the signed package, verify the Ed25519 signature, install
./install.sh rental-property-management
Skill contents
name: rental_property_management description: "Run a small rental portfolio on the operations side: screening applicants against criteria written before applications open, lease packets and statutory notices with their deadlines tracked, maintenance intake triaged by safety and cost, and move-out accounting that matches every charge to the lease and local rules. Use when screening a rental applicant, building screening criteria, triaging a repair request, tracking deposit or notice deadlines, or settling a security deposit."
Rental Property Management
Purpose
Run the day to day operations of a small rental portfolio as a set of ledgers and deadlines, not as memory and habit. Screening follows criteria written before the unit was advertised. Every statutory notice has a due date computed from a verified local rule. Maintenance requests are triaged by safety first, then cost. Move-out money moves only against documented charges that the lease and local law allow.
This skill is operations, not investment analysis and not legal advice. Underwriting a purchase is a different skill, and drafting the tenant facing messages themselves is a different skill. This one produces the criteria, the dates, the amounts, and the records those messages carry. When a rule is contested or a notice may end a tenancy, the output is a clean file for a local attorney or housing office to review, not a confident answer.
Workflow
1. Build the jurisdiction sheet before anything else
- Fill one jurisdiction sheet per property from the state statute and the city housing office, using references/jurisdiction-sheet.md. Record the deposit cap, the deposit return deadline and what starts its clock, entry notice, cure periods, screening limits, and penalties, each with the source and the date checked.
- Treat every number in this skill as an example until the sheet confirms it for that property. Deposit return deadlines run from 14 to 60 days depending on the state, and missing one can forfeit deductions or trigger statutory penalties, so a deadline from memory is a deadline at risk.
- Refresh the sheet at each lease signing and whenever a law change is reported for that state or city.
2. Write screening criteria before applications open
- Write the criteria for the unit before advertising it: income multiple of rent and how income is documented, rental history standard, eviction lookback in years, credit standard if one is used, and any criminal history standard stated as convictions within a stated period, never arrests alone.
- Keep the criteria to facts an application and a report can show. No criterion may touch the seven Fair Housing Act protected classes: race, color, religion, national origin, sex, familial status, or disability. State and local law often adds classes, including source of income in many places, so check the jurisdiction sheet.
- Date and version the criteria. Every applicant for that unit is scored against that same version. If the criteria change, the change starts with the next vacancy, never mid round.
- Get written consent before ordering a consumer report. Screening a rental applicant is a permitted purpose under the Fair Credit Reporting Act, and the consent in the file is the proof.
- Score with the tool. It refuses any applicant file that carries protected or proxy fields, which is the point: those fields are never scored, in either direction.
bash
python3 ~/workspace/skills/rental-property-management/bin/ops.py screen --criteria assets/sample-criteria.json --applicant assets/sample-applicant.json
- Log every applicant in the screening log in references/notice-and-ledger-forms.md, including incomplete and declined files.
3. Close a declined or worsened file correctly
- If a consumer report contributed in any part to a denial, a larger deposit, a co-signer requirement, or higher rent, send an adverse action notice. Its required contents are listed in references/notice-and-ledger-forms.md: agency name, address, and phone, a statement that the agency did not make the decision, the right to dispute, and the right to a free report if requested within 60 days.
- State the failed criteria by field in the file note. Write it so the applicant and an outside reviewer can both read it later.
- Keep the application, the report reference, and the notice copy together for the retention period on the jurisdiction sheet.
4. Run the lease packet as a checklist
- Assemble the packet from the lease, the jurisdiction sheet disclosures, the move-in condition record, the deposit receipt with amount and holding details, and the house rules that are actually in the lease. If a rule is not in a signed document, it is a request, not a term.
- Walk the move-in condition record room by room with dated photos. This record is the comparison base for every later damage charge. Skipping it makes the move-out settlement guesswork.
- Open the rent ledger on day one, in the form in references/notice-and-ledger-forms.md. Charges post when the lease says they fall due, payments post when received, and corrections are reversing lines, never edits.
5. Track every statutory notice on a deadline list
- Convert each notice duty into a dated task the day its clock starts: deposit accounting from move out, cure periods from a violation notice, entry notice before a non-emergency visit, renewal and non-renewal windows from the lease and the sheet.
- Generate the list with the tool from the anchor date and the jurisdiction sheet. It sorts by due date and flags overdue items.
bash
python3 ~/workspace/skills/rental-property-management/bin/ops.py deadlines --jurisdiction assets/sample-jurisdiction.json --anchor 2026-01-31 --today 2026-02-10
- Entry follows the sheet, not habit. Most states require advance written notice for non-emergency entry, commonly 24 to 48 hours, and some states have no entry statute at all, which makes the lease the rule. A genuine emergency threatening safety or the building is the recognised exception, and it gets logged as one.
6. Triage maintenance by safety, then cost
- Log the request with the time notice was received. The repair clock runs from receipt, in whatever form the notice arrived. Confirm the request back to the tenant in writing the same day.
- Classify with the tool, then check the classification with your own eyes. Keyword triage starts the sort, it does not finish it.
bash
python3 ~/workspace/skills/rental-property-management/bin/ops.py triage --request "Tenant reports sewage backing up into the bathtub"
- P0 emergency: a condition threatening health, safety, or the building, such as no heat in cold weather, a burst pipe, sewage backup, a gas smell, a major electrical hazard, or a broken exterior lock. Internal target: make safe within 24 hours, with a named contact and an update time given to the tenant right away.
- P1 urgent: loss of a major function with a workaround, such as one working toilet in a two bath unit, a failed refrigerator, or an active slow leak. Internal target: vendor booked within 72 hours.
- P2 routine: minor or cosmetic items that do not affect habitability, such as a dripping faucet or a sticky door. Internal target: scheduled within 30 days, batched with other routine work for the unit where that saves a visit.
- These targets are internal service standards. The legal duty in most states is repair within a reasonable time after notice, judged by severity, and the jurisdiction sheet holds any stricter local rule. Never quote an internal target to a tenant as a legal deadline, and never let a cost argument move a P0 down a level.
- Close each request with a completion date, the cost, and tenant confirmation in the maintenance log. A pattern of repeat requests on one system is a capital decision, so surface it in the monthly review instead of paying for the fourth patch.
7. Settle move out against the record
- Inspect against the move-in condition record, with dated photos, within the window the jurisdiction sheet gives.
- Build the settlement from charges that pass three tests: the category is one the lease and state law allow, the item is documented with an invoice, a photo pair, or the condition record, and the amount is the actual cost. Ordinary wear is not a charge. Faded paint, minor scuffs, and worn carpet paths are the cost of renting the unit out.
- Run the accounting with the tool. It excludes ordinary wear from the total, flags undocumented charges, and reports the refund due.
bash
python3 ~/workspace/skills/rental-property-management/bin/ops.py settle --file assets/sample-settlement.json
python3 ~/workspace/skills/rental-property-management/bin/ops.py demo
- Send the itemized statement and any refund by the deadline on the jurisdiction sheet, by a method that gives proof of sending. If a charge cannot be finalised inside the deadline and the state allows an interim accounting, send the interim statement on time and name the date the final one will follow.
- Keep the settlement, the condition records, and the invoices as one file. Deposit disputes are won and lost on this file, not on recollection.
8. Review the portfolio month
- Once a month, read the four ledgers together: applications and decisions, rent ledger balances, open maintenance by level and age, and upcoming deadlines in the next 60 days.
- Carry forward only three lists: overdue deadlines with a fix date, P0 and P1 items still open with a vendor date, and ledger balances over 30 days old with the next notice step named.
- The demo command runs one worked month end to end, one application, one emergency, one move out, and is the fastest way to see the expected shapes.
Output Contract
Every task in this skill returns a record, not just an action:
- Screening: criteria version and date, result per criterion by field, the decision, and whether an adverse action notice is required and sent.
- Lease packet: the checklist with each document marked present or missing, plus the move-in record status.
- Deadlines: a dated list sorted by due date, each item with its anchor date, its rule source from the jurisdiction sheet, and overdue flags.
- Maintenance: the log row with receipt time, triage level and why, vendor and dates, cost, and tenant confirmation.
- Settlement: deposit, each deduction with category, amount, documentation, and lease basis, flags for any charge that fails a test, the valid total, and the refund due with its send-by date.
- Monthly review: the three carry forward lists only, each item with an owner and a date.
Operating Rules
- No deadline, cap, or notice period is used until the jurisdiction sheet for that property verifies it from a primary source. Examples in this skill show the shape of real rules, never the rule for your property.
- Criteria are written before applications open and applied identically to every applicant for the unit. No mid round changes, no exceptions scored by feel, no protected or proxy fields in a scoring file.
- A consumer report is ordered only with written consent on file, and any decision it touches gets an adverse action notice with the FCRA contents.
- Ordinary wear is never deducted. A charge needs an allowed category, documentation, and an actual cost, all three.
- Maintenance triage sorts by safety before cost, always. Internal response targets are never presented as legal deadlines.
- Ledgers are append only. Errors are corrected with reversing lines that name the original entry.
- This skill is not legal advice. Evictions, contested deposits, fair housing complaints, and any notice that ends a tenancy go to a local attorney or the housing office with the records this workflow produced.
- Keep applicant and tenant records to what the workflow needs, store reports securely, and dispose of consumer reports so they cannot be read or reconstructed when the retention period ends.
Versions
v1.0.02026-10-31 · 0 installs · Ed25519-signed./install.sh rental-property-management 1.0.0bundle (.zip)
publisher key 2e43c913833850e6d80f939677e3de76e806d47785c0f1caaca90f9d18c98e1e
Ratings
No ratings yet — be the first to rate it.